Math.random()的引入
题目
假设你想开发一个玩彩票的游戏,程序随机地产生一个两位数的彩票,提示用户输入一个两位数,然后按照下面的规则判定用户是否能赢。
1)如果用户输入的数匹配彩票的实际顺序,奖金10 000美元。
2)如果用户输入的所有数字匹配彩票的所有数字,但顺序不一致,奖金 3 000美元。
3)如果用户输入的一个数字仅满足顺序情况下匹配彩票的一个数字,奖金1 000美元。
4)如果用户输入的一个数字仅满足非顺序情况下匹配彩票的一个数字,奖金500美元。
5)如果用户输入的数字没有匹配任何一个数字,则彩票作废。
提示:使用(int)(Math.random() * 90 + 10)产生随机数。
Math.random() : [0,1) * 90 ?[0,90) + 10 ?[10,100) ? [10,99]
代码实现
import java.util.*;
public class IfTest4 {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
System.out.println("请输入两个两位数整数:");
int num1 = scan.nextInt();
int num2 = scan.nextInt();
//double velu = (Math.random() * 90); //Math.random()[0,1)--->[0,90)
//double velu = (Math.random() * 90 + 10); // [0,1)--->[0,90)---->[10,100)
//double velu = (Math.random() * 90 + 10); //[0,1)--->[0,90)---->[10,100)
int velu1 = (int)(Math.random() * 90 + 10); //[0,1)--->[0,90)---->[10,99]
int velu2 = (int)(Math.random() * 90 + 10);
if(num1 == velu1 && num2 == velu2) {
System.out.println("奖金10000美元");
}else if(num1 == velu2 && num2 == velu1) {
System.out.println("奖金3000美元");
}else if(num1 == velu1 || num2 == velu2) {
System.out.println("奖金1000美元");
}else if(num1 == velu2 || num2 == velu1) {
System.out.println("奖金50000美元");
}else {
System.out.println("什么也没有");
}
System.out.println("中奖号码" + velu1 + " " + velu2);
}
}