拍24是一个简单的游戏,通过生成4张扑克牌,并要求用户通过加减乘除计算出24。然后,它会检查用户输入的算式是否合法,如果合法,就会显示"恭喜你,算对了!"否则,会显示"很遗憾,你没有算对。"
import java.util.Scanner;
import java.util.Random;
public class MyGame {
public static void main(String[] args) {
String username;
Scanner scanner = new Scanner(System.in);
Random random = new Random();
System.out.println("************************");
System.out.println(" 游戏: 算24");
System.out.println(" 版本:v1.0");
System.out.println("************************");
scanner.nextLine();
System.out.println("请输入玩家的用户名:");
username=scanner.nextLine();
if(username.trim().equals("")){
username="匿名用户";
}
while (true) {
// 生成4张扑克牌
for(int i=0;i<4;i++){
int num=(int)(Math.random()*13)+1;
switch(num){
case 11:
System.out.print("J\t");
break;
case 12:
System.out.print("Q\t");
break;
case 13:
System.out.print("K\t");
break;
default:
System.out.print(num+"\t");
}
}
System.out.println();
System.out.println("请输入通过加减乘除计算24的方法:");
// 检查用户输入的算式是否合法,这里仅做示例,你可以根据实际需要编写更复杂的检查逻辑
String computer_line=scanner.nextLine();
if (is24(computer_line)) {
System.out.println("恭喜你,算对了!");
} else {
System.out.println("很遗憾,你没有算对。");
}
scanner.nextLine(); // 消耗掉输入流中的换行符,避免影响下次输入
}
}
// 检查算式是否能够计算出24,这里仅做示例,你可以根据实际需要编写更复杂的检查逻辑
private static boolean is24(String s) {
return s.equals("((1+1)*13)-1"); // 这里只是一个示例,实际应该使用更复杂的算法来判断算式是否合法
}
}