package com.hpli.demo;
import javax.swing.JOptionPane;
public class Demo
{
//算4个数 通过加减乘除 结果为24 列举每种情况统计... 得用double型的变量存储数据
public static void main(String args[])
{
int count = 0;
String out = "";
double num1 = 1;
double num2 = 1;
double num3 = 1;
double num4 = 1;
try
{
num1 = Double.parseDouble(JOptionPane.showInputDialog("Please enter the first integer!"));
num2 = Double.parseDouble(JOptionPane.showInputDialog("Please enter the second integer!"));
num3 = Double.parseDouble(JOptionPane.showInputDialog("Please enter the third integer!"));
num4 = Double.parseDouble(JOptionPane.showInputDialog("Please enter the fourth integer!"));
}
catch (NumberFormatException numberFormatException)
{
JOptionPane.showMessageDialog(null,
"You must enter an integer",
"Invalid Number Format",
JOptionPane.ERROR_MESSAGE);
System.exit(0);
}
for (int i = 1; i <= 4; i++)
{
double tmp1 = jiSuan(i, num1, num2);
for (int j = 1; j <= 4; j++)
{
double tmp2 = jiSuan(j, tmp1, num3);
for (int k = 1; k <= 4; k++)
{
double tmp3 = jiSuan(k, tmp2, num4);
if (tmp3 == 24)
{
count++;
out +=
"第" + count + "个解法:((" + (int)num1 + getSign(i) + (int)num2 + ")" + getSign(j) + (int)num3
+ ")" + getSign(k) + (int)num4 + "= 24\n";
}
}
}
}
String outPut = "";
if (count == 0)
{
outPut += "对不起," + (int)num1 + " " + (int)num2 + " " + (int)num3 + " " + (int)num4 + " 算24点无解......";
}
else
{
outPut += "总共" + count + "种解法,它们是:\n" + out;
}
JOptionPane.showMessageDialog(null, outPut, "Result", JOptionPane.PLAIN_MESSAGE);
System.exit(0);
}
public static double jiSuan(int a, double b, double c)
{
double number = 0;
switch (a)
{
case 1:
number = b + c;
break;
case 2:
number = b - c;
break;
case 3:
number = b * c;
break;
case 4:
number = b / c;
break;
}
return number;
}
public static String getSign(int a)
{
String sign = "";
switch (a)
{
case 1:
sign = "+";
break;
case 2:
sign = "-";
break;
case 3:
sign = "×";
break;
case 4:
sign = "÷";
break;
}
return sign;
}
}
分享到:
相关推荐
1、一个".java"源文件中是否可以包括多个类(不是内部类)?有什么限制? ...... 7 2、Java 有没有 goto? .......................................................................................................
易语言列举法-百鸡问题.rar 易语言列举法-百鸡问题.rar 易语言列举法-百鸡问题.rar 易语言列举法-百鸡问题.rar 易语言列举法-百鸡问题.rar 易语言列举法-百鸡问题.rar
易语言源码列举法-百鸡问题.rar 易语言源码列举法-百鸡问题.rar 易语言源码列举法-百鸡问题.rar 易语言源码列举法-百鸡问题.rar 易语言源码列举法-百鸡问题.rar 易语言源码列举法-百鸡问题.rar
计算机列举几种常见的算法-列举十大计算机经典算法.pdf
进程模块列举Delphi小例子..rar
统计目录文件数,目录文件列举,文件数统计
智慧广场《分类列举》教学设计可用.pdf
在5 5 5 5 5=5空格内可以添加+、-、*、/。程序结果为有哪几种情况,采用列举法,多重循环可以实现。可供参考
112集合的列举法与描述法.pptx
易语言源码列举法-百鸡问题.7z
第2章 Windows API概要..........................................................................................................24 2.1 Windows数据类型......................................................
大厂面试题解析(3):请列举一支笔的20种用途.docx
智慧广场《分类列举》教学设计分享.pdf
外闻:博客列举巴茨七大错误.docx
《解决问题的策略列举》课件二小.ppt
人教版初中历史列举题精编总复习.doc
无限制实数加减运算脚本.cmd 星光闪烁.bat 星光闪烁.cmd 显示c盘~z盘.bat 显示只有指定个数字符的行.cmd 显示各分区剩余空间情况.cmd 显示当面途径DIR.bat 显示所有分区的剩余空间(以MB为单位).cmd 显示本机用户...