黑马程序员技术交流社区
标题:
需求:猜数字小游戏(数据在1-100之间)随机生成一个数字
[打印本页]
作者:
1026060341
时间:
2015-11-2 23:40
标题:
需求:猜数字小游戏(数据在1-100之间)随机生成一个数字
import java.util.Scanner; //导包
class GuessNum {
public static void main(String[] args)
{
Scanner sc = new Scanner(System.in); //创建键盘录入对象
System.out.println("请输入一个1-100之间的数字");
int guessNum = (int)(Math.random()*100)+1; //随机产生一个1-100之间的数字
int count = 0; //定义一个变量来记录下您猜的次数
while(true){ //定义一个循环,猜错之后可以继续猜
count++; //记录下您猜的次数
int num = sc.nextInt(); //将键盘录入的数字赋值给num
if(num>guessNum)
System.out.println("您猜的数字大了");
else if(num<guessNum)
System.out.println("您猜的数字小了");
else{
System.out.println("\"恭喜您\"猜对了"); //猜对的时候结束循环
break;
}
}
if(count<=3)
System.out.println(count+"次您就猜对了真是太厉害了!");
else if(count<=10)
System.out.println(count+"次您才猜对,还需要努力哦!");
else
System.out.println("天呐! "+count+"次你才猜出来,白痴吗你?"); //根据您猜的次数来判断您的智商
}
}
作者:
noland
时间:
2015-11-3 00:08
挺好的 赞赞赞
作者:
sshh11
时间:
2015-11-3 00:41
太好了 不错不错
作者:
momoxixi
时间:
2015-11-3 17:43
import java.util.Scanner;
/**
* Created by mo on 15/11/1.
*
* 需求:猜数字小游戏,猜数范围为1-100,猜数次数上限为5次
* 若猜错,则下次猜数的范围根据本次输入的数据缩小
* 输入超过100或者小于1的,要提示输入错误,同样计入猜数次数
* 最后输出正确答案
*/
public class GuessNumber {
public static void main(String[] args) {
int number = (int)(Math.random()*100)+1; //生成1-100的随机数
int key0 = 1; //定义猜数范围下限
int key1 = 100; //定义猜数范围上限
int count = 0; //定义猜数次数
while (true){
//while循环,因为前四次和第五次的提示不一样,所以内部先判断是前四次还是第五次猜数
if (count < 4){ //若要更改猜数次数上限,将此处改为猜数次数-1
Scanner sc = new Scanner(System.in);
System.out.println("请输入您猜的数字,范围为"+key0+"-"+key1);
int key = sc.nextInt();
count++;
if (key == number){
System.out.println("猜对了!");
break;
}else if(key < 1 || key > 100){
System.out.println("您输入的数据有误,请重试");
}else if(key < number){
if (key > key0){ //根据用户输入的数据判断下限是否需要改变
key0 = key;
}
System.out.println("您猜错了,请继续");
}else {
if (key < key1){ //根据用户输入的数据判断上限是否需要改变
key1 = key;
}
System.out.println("您猜错了,请继续");
}
}else { //第五次猜数
Scanner sc = new Scanner(System.in);
System.out.println("请输入您猜的数字,范围为"+key0+"-"+key1);
int key = sc.nextInt();
if (key == number){
System.out.println("猜对了!");
break;
}else if(key < 1 || key > 100){
System.out.println("您输入的数据有误,超过规定次数,游戏结束");
break;
}else if(key < number){
System.out.println("您猜错了,超过规定次数,游戏结束");
break;
}else {
System.out.println("您猜错了,超过规定次数,游戏结束");
break;
}
}
}
System.out.println("正确答案为:"+number);
}
}
复制代码
作者:
Mr___dangerous
时间:
2015-11-3 18:59
不错不错,学习了
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2