Java多分支于嵌套彩票游戏输入一个三位数,如果号码完全相同获得10000元,如果号码3个数字于中奖号码数字相同只是循序不同获得3000元,如果有数字于中奖号码数字相同获得200,其他的不获奖
时间: 2024-09-13 17:06:25 浏览: 94
java输入十个数字比较大小运用冒泡
5星 · 资源好评率100%
在Java中设计一个嵌套彩票游戏规则,可以按照以下步骤实现:
```java
import java.util.Scanner;
public class LotteryGame {
public static void main(String[] args) {
int lotteryNumber = generateLotteryNumber(); // 中奖号码
Scanner scanner = new Scanner(System.in);
System.out.println("请输入一个三位数参与抽奖:");
int playerNumber = scanner.nextInt();
// 判断并计算奖励
if (playerNumber == lotteryNumber) { // 完全相同
System.out.println("恭喜您,中得一等奖,奖金10000元!");
} else if (isPermutation(playerNumber, lotteryNumber)) { // 顺序不同,但有三个相同的数字
System.out.println("恭喜您,中得二等奖,奖金3000元!");
} else if (containsSomeSameNumbers(playerNumber, lotteryNumber)) { // 至少有一个数字相同
System.out.println("恭喜您,中得三等奖,奖金200元!");
} else { // 没有数字相同
System.out.println("很遗憾,未中奖。");
}
scanner.close();
}
private static boolean isPermutation(int num1, int num2) {
String strNum1 = Integer.toString(num1);
String strNum2 = Integer.toString(num2);
return strNum1.contains(strNum2.replaceAll("\\d", ""));
}
private static boolean containsSomeSameNumbers(int num1, int num2) {
String strNum1 = Integer.toString(num1);
String strNum2 = Integer.toString(num2);
return strNum1.matches("(.)\\1.*\\1") && !strNum1.equals(strNum2);
}
private static int generateLotteryNumber() {
// 实现随机生成三位数的功能,这里省略
// 可能返回如:456
return 456;
}
}
```
在这个程序中,我们首先生成一个中奖号码,然后用户输入他们的号码。通过`isPermutation`和`containsSomeSameNumbers`两个辅助函数,分别判断是否满足顺序不同但有三个相同数字、以及至少有一个数字相同的条件。如果玩家的号码符合条件,就输出对应的奖项。
阅读全文