java猜数字游戏_java猜数字小游戏

/*

*

* 猜数字小游戏

*

* 先由系统生成一个2-100之间的随机数字,

*

* 然后捕获用户从控制台中输入的数字是否与系统生成的随机数字相同,

*

* 如果相同则统计用户所猜的次数,并给出相应评价

*

* 评价标准:用户猜的次数小于等于6次,您的灵感非常优秀!

*

* 大于等于12次,您的灵感只能说一般!

*

* 反之提示: 您的灵感太差了,必须尽快想办法提高!

*

* 用户猜对数字并给出相应评价之后,提示用户是否继续本游戏

*

* 提示信息为: 本次游戏结束,是否继续,继续请输入1,反之退出:

*

* 然后捕获用户输入的数字是否为1,如果为1,则重新开始本游戏.反之退出(结束)本游戏.

*

* 如果用户在猜数字的过程中输入了0,(不论何时)则退出本游戏.

*

* 1.首先定一个interface(NumberGameInterface),在interface中定义两个方法:

*

* 第一个方法: 判断用户输入的是否是退出游戏的标识数字(参数num是用户输入的标识数字)

*

* 如果用户输入的是0,则返回true,反之返回false

*

* boolean isExit(int num)

*

* 第二个方法: 开始游戏

*

* void gameStart()

*

* 2.然后定义实现类(NumberGameImpl)实现接口中的方法,最后编写一个测试类(NumberGameTest)用于测试本游戏

*

* 提示

* 1.生成一个指定范围的随机数:

*Random rand = new Random();

*int num;// 用于保存系统生成的随机数

*//num = rand.nextInt(100);// 由系统生成一个0-100(不包括)之间的随机数

*num = 2 + rand.nextInt(99);// 由系统生成一个 2-100 之间的随机数

*

* 2.结束程序运行:

* System.exit(0);

*

*

*/

import java.util.*;interfaceNumberGameInterface {public abstract boolean isExit(intnum);public abstract voidgameStart();

}class Game implementsNumberGameInterface {public boolean isExit(intnum) {if (num == 0) {return true;

}else{return false;

}

}public voidgameStart() {

Scanner scan= newScanner(System.in);

Random rand= newRandom();int num; //用于保存系统生成的随机数//num = rand.nextInt(100);//由系统生成一个0-100(不包括)之间的随机数

num = 2 + rand.nextInt(99);//由系统生成一个 2-100 之间的随机数

System.out.println("num=" +num);boolean flag = true;int total = 0;//记录猜的次数

while (true) {

System.out.println("输入你猜的数字:");intunumer;

unumer=scan.nextInt();

flag= !isExit(unumer);if(isExit(unumer)) {

System.out.println("---------输入0 游戏结束-----------");

System.exit(0);

}

total++;if (unumer ==num) {

flag= false;if (total <= 6) {

System.out.println("您猜了" + total + "次,您的灵感非常优秀!");

System.out.println("游戏结束:1.重新开始 本游戏 0.退出游戏");int unumer1 =scan.nextInt();if(isExit(unumer1)) {

System.out.println("*****Game Over!***********");

System.exit(0);

}else{

total= 0;

flag= true;

}

}else if (total <= 12) {

System.out.println("您猜了" + total + "次,您的灵感只能说一般!");

System.out.println("游戏结束:1.重新开始本游戏 0. 退出游戏");int unumer1 =scan.nextInt();if(isExit(unumer1)) {

System.out.println("*****Game Over!***********");

System.exit(0);

}else{

total= 0;

flag= true;

}

}else{

System.out.println("您猜了" + total + "次,您的灵感太差了,必须尽快想办法提高!");

System.out.println("游戏结束:1.重新开始本游戏 0.退出游戏");int unumer1 =scan.nextInt();if(isExit(unumer1)) {

System.out.println("*****Game Over!***********");

System.exit(0);

}else{

total= 0;

flag= true;

}

}

}

}

}/***@paramargs*/}classTestGame {public static voidmain(String[] args) {//TODO Auto-generated method stub

Game g1 = newGame();

g1.gameStart();

}

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值