假如你想开发一个玩彩票的游戏,程序设计地产生一个两位数的才票,提示用户输入一个两位数,然后按照下面的规则判定用户是否能能赢。
1)如果用户输入的数匹配彩票的实际顺序,奖金10 000美元。
2)如果用户输入的所有数字匹配彩票的所有数字,但顺序不一致,奖金 3 000美元。
3)如果用户输入的一个数字仅满足顺序情况下匹配彩票的一个数字,奖金1 000美元。
4)如果用户输入的一个数字仅满足非顺序情况下匹配彩票的一个数字,奖金500美元。
5)如果用户输入的数字没有匹配任何一个数字,则彩票作废。
一:需要用键盘输入所以需要导包
import java.util.Scanner;
从键盘上获取数值:
Scanner sc = new Scanner(System.in);
int number2 = sc.nextInt();
二:这里我们需要产生一个10-99的随机数
Math.random();// 产生随机数
Math.random(); //产生[0,1)范围的随机值
Math.random() * 90; //范围为[0,90)
(int)(Math.random() * 90 + 10);//产生一个两位数的随机数。
三:跟两位数的个位以及十位有关:
int ge1 = number1 / 10;//随机数的模(随机两位数的个位)。
int ge2 = number2 / 10;//输入的两位数的模(两位数的个位)
int shi1 = number1 % 10;//随机数的十位;
int shi2 = number2 % 10;//输入两位数的十位
综上所述:
import java.util.Scanner;
public class LotteryTicket {
public static void main(String[] args) {
//随机产生一个两位数
int number1 = (int)(Math.random()*90+10);
Scanner sc = new Scanner(System.in);
System.out.println("请输入一个两位数:");
int number2 = sc.nextInt();
int ge1 = number1 / 10;//随机数的模(随机两位数的个位)。
int ge2 = number2 / 10;//输入的两位数的模(两位数的个位)
int shi1 = number1 % 10;//随机数的十位;
int shi2 = number2 % 10;//输入两位数的十位
if(number2 == number1){
System.out.println("您输入的数匹配彩票的实际顺序奖金10000美元");
}else if(ge1 == shi2 && ge2 == shi1){
System.out.println("您输入的数字匹配彩票的所有数字,但顺序不一样。奖金3000美元");
}else if(ge1 == ge2 || shi1 == shi2){
System.out.println("您输入的数字仅有一个数字满足顺序情况下匹配彩票一个数字奖金1000美元");
}else if(ge1 == shi2 || ge2 == shi1){
System.out.println("您输入的数字仅有一个数字满足非顺序情况下匹配彩票数字的一个数字奖金500美元");
}else {
System.out.println("没中奖");
}
System.out.println("中奖的号码是:"+number1);
sc.close();
}
}
运行结果测试: