- 关于猜数字/价格游戏
思路分析:
- 首先,通过使用Random随机产生一个100~1000之间的数字
- 其次,因为我们不知道用户会在第几次猜对数字,所以我们可以用while()循环语句进行判断。
- 在while()这个循环语句中,我们开始猜数字,然后我们利用 if --else if--else这三个语句进行判断用户猜的数字是否正确。
- 当用户猜对时,游戏结束。
- 当用户猜错时,告诉用户是猜大了,还是猜小了,并提示用户下次的猜数范围,直到猜对为止,游戏结束。
代码:
import java.util.Scanner;
import java.util.Random;
public class GuessPrice {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
Random rand = new Random();
int low = 100;
int high = 1000;
//随机产生一个100~1000之间的数字,其中,899 = high - low + 1
int number = rand.nextInt(899) + low;
int counts = 0;//记录输入次数
System.out.println("请猜一个在 " + low + " 到 " + high + " 之间的数字:");
while (true)
{
int guess_price = sc.nextInt();//猜价格
counts+=1;
if (guess_price < number)
{
System.out.println("猜小了,请猜一个在 " + (guess_price+1) + " 到 " + high + " 之间的数字:");
low = guess_price + 1;
}
else if (guess_price > number)
{
System.out.println("猜大了,请猜一个在 " + low + " 到 " +(guess_price - 1) + " 之间的数字:");
high = guess_price - 1;
}
else
{
System.out.println("恭喜你,猜对了!");
System.out.println("你一共猜了"+counts+"次!");
break;
}
}
}
}
运行结果: