24点课程设计java,Java程序设计之24点

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];

//加的处理

if(n > 2)

expression[i] = "(" + expi + "+" + expj + ")";

else

expression[i] = expi + "+" + expj;

number[i] = numi + numj;

if(circule(n-1))

return true;

//减的处理,有两种情况expi-expj,expj-expi

if(n > 2)

expression[i] = '(' + expi + '-' + expj + ')';

else

expression[i] = expi + '-' + expj;

number[i] = numi - numj;

if(circule(n-1))

return true;

if(n > 2)

expression[i] = '(' + expj + '-' + expi + ')';

else

expression[i] = expj + '-' + expi;

number[i] = numj - numi;

if(circule(n-1))

return true;

//乘的处理

expression[i] = expi + "*" + expj;

number[i] = numi * numj;

if(circule(n-1))

return true;

//除的处理,有两种情况expi/expj,expj/expi

if(numj > PRECISION)

{

expression[i] = expi + '/' + expj;

number[i] = numi / numj;

if(circule(n-1))

return true;

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值