• 大小: 3KB
    文件类型: .java
    金币: 1
    下载: 0 次
    发布日期: 2021-06-07
  • 语言: Java
  • 标签: Java  24点游戏  

资源简介

既可以实现24点游戏,也可以实现其他数值的游戏

资源截图

代码片段和文件信息

package niuke;

import java.util.Scanner;


public class Point24 {
private static double Threshold = 1E-6;
private static int CardNumber = 4;
private static int ResultValue = 24;
private static double[] number = new double[CardNumber];
private static String[] result = new String[CardNumber];

public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
while(sc.hasNextLine()){
for(int i=0;i<4;i++){
number[i] = sc.nextInt();
}
Point24 fn = new Point24();
if(fn.PointGame(4)){
System.out.println(“true“);
}
else{
System.out.println(“false“);
}
}

}

/**
 * 穷举法
 * 
 * if(Array){
 *  if(Array.length < 2){
 *  if(得到的最终结果为24) 输出表达式
 *  else 输出无法构造符合要求的表达式
 *  }
 *  foreach(从数组中任取两个数的组合){
 *   foreach(运算符(+-*/)){
 *    1.计算该组合在此运算符下的结果 
 *    2.将该组合中的两个数从原数组中移除,并将步骤1的计算结果放入数组
 *    3.对新数组递归调用f如果找到一个表达式则返回
 *    4.将步骤1的计算结果移除,并将该组合中的两个数重新放回数组中对应的位置
 *   }
 *  }
 * }
 */
public boolean PointGame(int n){
if(n==1){
if(Math.abs(number[0] - ResultValue) < Threshold){
return true;
}
else
return false;
}

for(int i=0;i for(int j=i+1;j

评论

共有 条评论