题目
Math.random()获取随机数
Math.random()返回的是一个[0.0,1.0)的doule类型的数
所以,获取0-9:(int)Math.random()*10–> [0,10)
获取0-10:(int)Math.random()*10+1–> [0,11)
获取10-99:(int)Math.random()90+10–> [10,100)
公式:
[a,b]: (int)Math.random()(b-a+1)+a
String类型:使用charAt()获取字符串的字符
由于要每个数字都进行比较,所以使用String类型并使用charAt(i)获取第i个位置上字符串的字符
String ticket=scan.next();
//获取第一和第二个数字
char t1=ticket.charAt(0);
char t2=ticket.charAt(1);
String类型:代码
import java.util.Scanner;
class PlayTicket {public static void main(String[] args) {
/*
假设你想开发一个玩彩票的游戏,程序随机地产生一个两位数的彩票,提示用户输入
一个两位数,然后按照下面的规则判定用户是否能赢。
如果用户输入的数匹配彩票的实际顺序,奖金10 000美元。
如果用户输入的所有数字匹配彩票的所有数字,但顺序不一致,奖金 3 000美元。
如果用户输入的一个数字仅满足顺序情况下匹配彩票的一个数字,奖金1 000美元。
如果用户输入的一个数字仅满足非顺序情况下匹配彩票的一个数字,奖金500美元。
如果用户输入的数字没有匹配任何一个数字,则彩票作废。
*///10-99String prize=(int)(Math.random()*90+10)+"";System.out.println("本期奖金号码为:"+prize);char p1=prize.charAt(0);char p2=prize.charAt(1);Scanner scan=new Scanner(System.in);System.out.println("请输入彩票号码:");String ticket=scan.next();//获取第一和第二个数字char t1=ticket.charAt(0);char t2=ticket.charAt(1);if((t1==p1)&&(t2==p2)){System.out.println("奖金10,000美元");}else if((t1==p2)&&(t2==p1)){System.out.println("奖金3000美元");}else if((t1==p1)||(t2==p2)){System.out.println("奖金1000美元");}else if((t1==p2)||(t2==p1)){System.out.println("奖金500美元");}else{System.out.println("彩票作废");}}
}
Int类型:获取两位数的十位和个位
int ticket=scan.nextInt(); //获取第一和第二个数字
int t1=ticket/10%10;//十位
int t2=ticket/1%10;//个位
Int类型:代码
import java.util.Scanner;
class PlayTicket2 {public static void main(String[] args) {//使用int类型//10-99int prize=(int)(Math.random()*90+10);System.out.println("本期奖金号码为:"+prize);int p1=prize/10%10;//十位int p2=prize/1%10;//个位Scanner scan=new Scanner(System.in);System.out.println("请输入彩票号码:");int ticket=scan.nextInt();//获取第一和第二个数字int t1=ticket/10%10;//十位int t2=ticket/1%10;//个位if((t1==p1)&&(t2==p2)){System.out.println("奖金10,000美元");}else if((t1==p2)&&(t2==p1)){System.out.println("奖金3000美元");}else if((t1==p1)||(t2==p2)){System.out.println("奖金1000美元");}else if((t1==p2)||(t2==p1)){System.out.println("奖金500美元");}else{System.out.println("彩票作废");}}
}