import java.io.IOException;
import java.io.UnsupportedEncodingException;
import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;
public class test2 {
/**
* 24点问题。计算24点是流行的扑克游戏,其方法是:任意取出4张牌:A、J、Q、K 王牌算1,其它牌按点数计算,花色不计。
* 目标是通过加、减、乘、除和括号最终算出24。设计一个程序,输入4个数字(1~10),则列出所有可能的计算结果为24的方案。 *
*/
public static void main(String[] args) throws IOException {
// TODO Auto-generated method stub
System.out.println("<24点问题求解算法实现>");
System.out.println("请输入一副扑克牌中的四张牌(提示:输入数字范围为1~10,A、J、Q、K 王牌用1代替):");
Scanner sc = new Scanner(System.in);
int n1=sc.nextInt();
int n2=sc.nextInt();
int n3=sc.nextInt();
int n4=sc.nextInt();
List li = getResult(n1,n2,n3,n4);
if(li.size()==0)
System.out.println("无解!");
else
{
System.out.println("24点问题的解为:");
for(int i=0;i<li.size();i++)
{
System.out.println(li.get(i).toString());
}
}
}
public static List getResult(int a,int b,int c,int d)
{
List list = new ArrayList();
int res=0;
for(int i=0;i<4;i++)
{
for(int j=0;j<4;j++)
{
for(int k=0;k<4;k++)
{
res=a*b;
}
res*=c;
}
res*=d;
}
list.add("(");
return list;
}
//计算2个操作数,返回计算结果;
public static int operation(int n1,int n2,int f)
{
int res=0;
int flag=f;
switch(flag)
{
case 1:
case 2:
case 3:
case 4:
}
return res;
// String[] operArr=new String[]{"+","-","*","/"};
// return operArr[ii];
}
}
没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
收起资源包目录
java算法资料.rar (12个子文件)
ziliao
test3.java 981B
test4.java 969B
算法分析.ppt 1.07MB
大赛练习题(1).doc 26KB
test7.java 547B
test5.java 1000B
动态规划.ppt 429KB
test.java 1KB
test2.java 2KB
test1.java 1KB
test6.java 1KB
程序设计集训试题(2).doc 32KB
共 12 条
- 1
资源评论
Micro21g
- 粉丝: 0
- 资源: 3
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功