分享一个猜数字游戏的JAVA代码

        今天老师布置了一个会用到do-while循环的作业,对于初学者还是有一些难度的。我在这里分享一下我的代码。学习的过程确实是”先是学会语法基础,然后再是逻辑问题“。

当然在分析程序题目的时候,逻辑还是很重要的,我相信我的这个代码肯定还有许多别的写法。


代码如下:

import java.util.Random;
import java.util.Scanner;


public class GuessNumber {
public static void main(String[] args){

/*
*游戏的规则是这样的。玩家自己输入一个数字 ,和系统随机产生的随机数比较,
*玩家在一局游戏里有6次机会,在这6次机会内猜对的话,就算做你游戏成功了一次,
* 否则就算失败了一次,最后可以输出你的游戏总局数以及成功和失败的局数。
*/
int guessNum;//自己所猜测的数字
int gameNum=6 ;//一局游戏中可以猜测的剩余次数
int gameSum=0;//游戏的局数
int failSum=0;//游戏失败的局数
int successSum=0;//游戏成功的局数
boolean boo =true;//控制do-while的变量

Scanner input = new Scanner(System.in) ;
Random ran = new Random() ;

int randomNum = ran.nextInt(20);//产生那个随机数
//打印欢迎界面
System.out.println("*******************************");
System.out.println("欢迎来到你猜我猜大家猜活动");
System.out.println("*******************************");
System.out.print("现在您需要从0-50中猜出一个数,\n看是否与我们摇出来的数相同\n");
System.out.println("*******************************");

do{

if(gameNum>0){

System.out.println("请输入一个您目前猜到的数字,您还可以猜"+gameNum+"次");
guessNum = input.nextInt();

if(guessNum>randomNum){
System.out.println("猜大了");
gameNum--;
}else if(guessNum<randomNum){
System.out.println("猜小了");
gameNum--;
}else{
successSum++;
gameSum++;
randomNum = ran.nextInt(20);

System.out.println("恭喜您猜对了!!!");
System.out.println("还要继续么?(Y/N)");

String str = input.next();
if(str.equals("Y")){
boo=true;
gameNum=6;
}else if(str.equals("N")){
boo=false;
}
}
}else{

failSum++;
gameSum++;

System.out.println("不好意思您的游戏次数已经用完,本局游戏失败!");
System.out.println("还要继续么?(Y/N)");
String str = input.next() ;

if(str.equals("Y")){
boo=true;
gameNum=6;
randomNum = ran.nextInt(20);
}else if(str.equals("N")){
boo=false;
}

}


}while(boo);

System.out.println("游戏结束");
System.out.println("*******************************");
System.out.println("您一共玩了"+gameSum+"局游戏,\n其中规定次数内猜对的局数是"+successSum+",猜错的局数是"+failSum);

}
}



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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值