/*此程序原来我用C++的一种方法写了的,那种方法是比较全面的输出所有的可能,不过很有点复杂,当时写出来很有自信的,不过那种方法不好,后来的算法设计老师给我讲了一种算法,当时觉得没意思,就没再写了,我现在想学用JAVA写程序,这是我写的第一个比较全的JAVA程序,就用那种方法写了,代码如下,算法就不用介绍了,看看应该很清楚,如有疑问,给小弟留言啊*/
import java.io.*;
public class NNumCalculateToM {
final static double PRECISION = 1E-6;
final static int NUM = 4;
final static int RESULT = 24;
static double number[];
static String[] expression;
static boolean circule(int n)
{
if(n == 1)
{
if(Math.abs(number[0] - RESULT) < PRECISION)
{
System.out.println(expression[0]);
return true;
}
else
{
return false;
}
}
for(int i=0; i
for(int j=i+1; j
{
double numi,numj;
String expi,expj;
numi = number[i];
numj = number[j];
number[j] = number[n-1];
expi = expression[i];
expj = expression[j];
expression[j] = expression[n-1];