前几天正好学到集合,老师教了我们一个程序小游戏,叫猜数字,具体规则是这样的,a从1-100中随机取一个数字,数字取好后不可改变,猜数字的人b猜一个数字,a负责告诉他猜的数字比定好的数字大了或者小了,这样循环一直到b猜中为止.
开始写的时候第一反应就是用循环和判断还有随机写,可是怎么具体实现的逻辑真的没头绪.后来看文档看视频,终于慢慢开始敲了起来,但是到一个地方卡主了,就是你不知道猜的人能猜几次,可能是5次,8次也可能是20次,猜了之后还得进行判断,随后还是没办法向老师打出了Help,老师一语道破真谛,把判断放到一个死循环了,然后用break跳出.
好!现在逻辑清楚了,开敲
public class Text09 {
public static void main(String[] args) {
//系统产生一个随机数1-100
Random a = new Random();
int b = 0;
int number = a.nextInt(100) + 1;
while (true) {
//键盘录入你要猜的数字
Scanner sc = new Scanner(System.in);
System.out.println("请输入你要猜的数字(1~100):");
int guessNumber = sc.nextInt();
//比较这两个数据(用if语句)
if (guessNumber > number) {
System.out.println("你猜的数据" + guessNumber + "大了");
b++;//记录次数
System.out.println("你当前猜的次数为" + b); //输出数字大了还是小了
} else if (guessNumber < number) {
System.out.println("你猜的数据" + guessNumber + "小了");
b++;//记录次数
System.out.println("你当前猜的次数为" + b );
} else {
System.out.println("你猜的数据" + guessNumber + "正确");
b++;//记录次数
System.out.println("你当前猜的次数为" + b );
break;
}
}
}
}
在用Random语句提取了随机值后,用if else语句进行三次判断,数据大了小了或者正确,并用一个值记录猜的次数,当猜中时,跳出循环,输出猜的次数,游戏结束.
万丈高楼平地起,给楼房添砖还是挺有成就感的,每天进步一点,我相信我终究能从现在的小白,变成大佬! |
|