资源简介
24点游戏Java实现,界面Javafx实现,一副牌中抽去大小王剩下 52 张(如果初练也可只用 1~10 这 40 张牌),任意抽取 4 张牌
(称牌组),用加、减、乘、除(可加括号)把牌面上的数算成 24。每张牌必须用一次且只能用
一次,如抽出的牌是 3、8、8、9,那么算式为(9-8)×8×3 或 3×8+(9-8)或(9- 8÷8)×3 等
代码片段和文件信息
package project1;
import java.util.ArrayList;
import java.util.Scanner;
/**
* 24点算法实现
* @author 软工一班 胡建权
*
*/
public class Algorithm {
public static int COUNT = 4; //抽取的扑克牌数量
public static int[] number = new int[COUNT]; //扑克牌的数组
public static String[] expression = new String[COUNT]; //表达式数组
public static ArrayList list = new ArrayList();
public int getsize(){
return COUNT;
}
public int[] getNubmer(){
return number;
}
public int getNumber(int i){
return number[i];
}
public int[] setnubmer(ArrayList list){
for(int i = 0;i < COUNT;i++){
number[i] = list.get(i);
}
return number;
}
public String getexpression(int i){
return expression[i];
}
public String setexpression(int iString str){
return expression[i] = str;
}
public ArrayList getList(){
return list;
}
public static boolean checkCondition(int n){
//当递归到只有一个数时,判断是否满足条件
if(n == 1){
if(number[0] == 24){
list.add(expression[0].substring(1 expression[0].length()-1));
return true;
}
else
return false;
}
for (int i = 0; i < n - 1; i++) {
for(int j = i + 1; j < n; j++){
int tempA = number[i];
int tempB = number[j];
String expreA = expression[i];
String expreB = expression[j];
number[j] = number[n-1];
expression[j] = expression[n-1];
//开始做加法
expression[i] = “(“+expreA+“+“+expreB+“)“;
number[i] = tempA+tempB;
if(checkCondition(n-1))
return true;
//减法,两种情况,tempA-tempB和tempB-tempA
if(tempA>=tempB){
expression[i] = “(“+expreA+“-“+expreB+“)“;
number[i] = tempA-tempB;
if(checkCondition(n-1))
return true;
}
/**/ if(tempB>tempA){
expression[i] = “(“+expreB+“-“+expreA+“)“;
number[i] = tempB-tempA;
if(checkCondition(n-1))
return true;
}
//乘法
expression[i] = “(“+expreA+“*“+expreB+“)“;
number[i] = tempA*tempB;
if(checkCondition(n-1))
return true;
//除法,两种情况,tempA/tempB和tempB/tempA并且保证分母不为0
if(tempB != 0 && tempA % tempB == 0){//除数不为0,并且能够整除
expression[i] = “(“+expreA+“/“+expreB+“)“;
number[i] = tempA/tempB;
if(checkCondition(n-1))
return true;
}
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 232 2017-12-05 11:55 DSproject (1)\.classpath
文件 385 2017-12-05 11:55 DSproject (1)\.project
目录 0 2017-12-24 22:22 DSproject (1)\bin\
目录 0 2017-12-24 22:22 DSproject (1)\bin\project1\
文件 3045 2017-12-21 16:36 DSproject (1)\bin\project1\Algorithm.class
文件 3482 2017-12-20 14:38 DSproject (1)\bin\project1\Evaluateex
目录 0 2017-12-24 22:22 DSproject (1)\bin\project1\image\
文件 101665 2017-12-11 16:57 DSproject (1)\bin\project1\image\1.jpg
文件 583 2005-09-26 22:53 DSproject (1)\bin\project1\image\1.png
文件 596 2005-09-26 22:53 DSproject (1)\bin\project1\image\10.png
文件 3092 2005-09-26 22:53 DSproject (1)\bin\project1\image\11.png
文件 3220 2005-09-26 22:53 DSproject (1)\bin\project1\image\12.png
文件 3083 2005-10-09 21:13 DSproject (1)\bin\project1\image\13.png
文件 453 2005-09-26 22:53 DSproject (1)\bin\project1\image\14.png
文件 474 2005-09-26 22:53 DSproject (1)\bin\project1\image\15.png
文件 508 2005-09-26 22:53 DSproject (1)\bin\project1\image\16.png
文件 494 2005-09-26 22:53 DSproject (1)\bin\project1\image\17.png
文件 578 2005-09-26 22:53 DSproject (1)\bin\project1\image\18.png
文件 531 2005-09-26 22:53 DSproject (1)\bin\project1\image\19.png
文件 463 2005-09-26 22:53 DSproject (1)\bin\project1\image\2.png
文件 606 2005-09-26 22:53 DSproject (1)\bin\project1\image\20.png
文件 625 2005-09-26 22:53 DSproject (1)\bin\project1\image\21.png
文件 634 2005-09-26 22:53 DSproject (1)\bin\project1\image\22.png
文件 630 2005-09-26 22:53 DSproject (1)\bin\project1\image\23.png
文件 3111 2005-09-26 22:53 DSproject (1)\bin\project1\image\24.png
文件 3149 2005-09-26 22:53 DSproject (1)\bin\project1\image\25.png
文件 3189 2005-10-09 21:13 DSproject (1)\bin\project1\image\26.png
文件 388 2005-09-26 22:53 DSproject (1)\bin\project1\image\27.png
文件 411 2005-09-26 22:53 DSproject (1)\bin\project1\image\28.png
文件 440 2005-09-26 22:53 DSproject (1)\bin\project1\image\29.png
文件 511 2005-09-26 22:53 DSproject (1)\bin\project1\image\3.png
............此处省略210个文件信息
- 上一篇:Jfinal框架搭建JSP项目Demo
- 下一篇:购物网站系统源代码网页模板正式版
评论
共有 条评论