摘要:
  猜数游戏,随机生成一个0到100之间的整数,从键盘输入数字进行猜数。
下面列举两大类玩法,其中每一类还有两种规则,分别如下示例:

一、第一大类(只能猜5次)

例如:
  一共可以猜5次,如果猜小了,在控制台输出猜小了;如果猜大了,在控制台输出猜大了;如果猜对了在控制台输出恭喜您猜对了,并结束游戏。

1、当输入非数字字符时,也算次数。

参考代码1:

package com.gx.demo;import java.util.Scanner;public class Test {public static void main(String[] args) {// 生成 0-100 随机数;Math.random():随机生成一个0-1(不包括1)的小数,*100,就是0-100啦int num = (int) (Math.random() * 100);System.out.println(num);Scanner sc = new Scanner(System.in);// 声明扫描仪变量// 遍历for (int i = 1; i < 6; i++) {System.out.println("请输入数字:");// 系统提示输入int count = 0;// 定义变量,用于接收键盘输入的数字try {count = sc.nextInt();// 判断大小if (count > num) {System.out.println("很遗憾,您猜的太大了");} else if (count < num) {System.out.println("很遗憾,您猜的太小了");} else {System.out.println("恭喜您,猜对了");break;// 直接跳出}} catch (Exception e) {// e.printStackTrace();System.out.println("输入有误,只能输入数字");sc.next();// 继续读取下一个值}if (i == 5) {System.out.println("您的次数用光啦");}}}}

演示结果:

2、当输入非数字字符时,不算次数。

参考代码2:

package com.gx.demo;import java.util.Scanner;public class Test2 {public static void main(String[] args) {// 生成 0-100 随机数;Math.random():随机生成一个0-1(不包括1)的小数,*100,就是0-100啦int num = (int) (Math.random() * 100);System.out.println(num);Scanner sc = new Scanner(System.in);// 声明扫描仪变量int a = 0;// 遍历while (true) {System.out.println("请输入数字:");// 系统提示输入int count = 0;// 定义变量,用于接收键盘输入的数字try {count = sc.nextInt();//如果这里接收到非数字字符,则执行catch里面的代码,不再执行try里面的代码if (true) {a += 1;if (a == 5) {System.out.println("您已累计猜错5次啦");break;//跳出循环}}// 判断大小if (count > num) {System.out.println("很遗憾,您猜的太大了");} else if (count < num) {System.out.println("很遗憾,您猜的太小了");} else {System.out.println("恭喜您,猜对了");break;//跳出循环}} catch (Exception e) {// e.printStackTrace();System.out.println("输入有误,只能输入数字");sc.next();// 继续读取下一个值}}      }}

演示结果:

二、第二大类(可以猜无限次)

例如:
  一共可以猜无限次,如果猜小了,在控制台输出猜小了;如果猜大了,在控制台输出猜大了;如果猜对了在控制台输出恭喜您经过n次终于猜对了,并结束游戏。

3、当输入非数字字符时,不算次数。(基于2改造)

参考代码3:

package com.gx.demo;import java.util.Scanner;public class Test3 {public static void main(String[] args) {// 生成 0-100 随机数;Math.random():随机生成一个0-1(不包括1)的小数,*100,就是0-100啦int num = (int) (Math.random() * 100);System.out.println(num);Scanner sc = new Scanner(System.in);// 声明扫描仪变量int a = 0;// 遍历while (true) {System.out.println("请输入数字:");// 系统提示输入int count = 1;// 定义变量,用于接收键盘输入的数字try {count = sc.nextInt();// 如果这里接收到非数字字符,则执行catch里面的代码,不再执行try里面的代码a += 1;//记录次数// 判断大小if (count > num) {System.out.println("很遗憾,您猜的太大了");} else if (count < num) {System.out.println("很遗憾,您猜的太小了");} else {System.out.println("恭喜您经过" + a + "次,终于猜对了");break;// 跳出循环}} catch (Exception e) {// e.printStackTrace();System.out.println("输入有误,只能输入数字");sc.next();// 继续读取下一个值}}}}

演示结果:

4、当输入非数字字符时,也算次数。(基于3改造)

参考代码4:

package com.gx.demo;import java.util.Scanner;public class Test4 {public static void main(String[] args) {// 生成 0-100 随机数;Math.random():随机生成一个0-1(不包括1)的小数,*100,就是0-100啦int num = (int) (Math.random() * 100);System.out.println(num);Scanner sc = new Scanner(System.in);// 声明扫描仪变量int a = 0;// 遍历while (true) {System.out.println("请输入数字:");// 系统提示输入            int count = 1;// 定义变量,用于接收键盘输入的数字try {count = sc.nextInt();// 如果这里接收到非数字字符,则执行catch里面的代码,不再执行try里面的代码a += 1;//记录次数// 判断大小if (count > num) {System.out.println("很遗憾,您猜的太大了");} else if (count < num) {System.out.println("很遗憾,您猜的太小了");} else {System.out.println("恭喜您经过" + a + "次,终于猜对了");break;// 跳出循环}} catch (Exception e) {// e.printStackTrace();System.out.println("输入有误,只能输入数字");a += 1;//记录次数sc.next();// 继续读取下一个值}}       }}

演示结果:

猜字游戏的各种玩法(附详细源码+演示结果),你都玩过吗?相关推荐

  1. cocos creator 2.4.5消除小游戏新玩法消星星源码H5+安卓+IOS三端源码

    cocos creator 2.4.5消除小游戏新玩法消星星源码H5+安卓+IOS三端源码,开发脚本为typeScript方便扩展和阅读,支持cocos creator2.X版本,完整的源码可直接运营 ...

  2. 通俗易懂玩QT:Qpaint绘制开关按钮(内附详细源码)

    Qpaint 绘制开关按钮(内附详细源码) 一.实验效果与开发环境 效果图如下: 开发环境: 二.实验代码 switch.h #ifndef SWITCH_H #define SWITCH_H#inc ...

  3. 实战|Python轻松实现动态网页爬虫(附详细源码)

    用浅显易懂的语言分享爬虫.数据分析及可视化等干货,希望人人都能学到新知识. 项目背景 事情是这样的,前几天我公众号写了篇爬虫入门的实战文章,叫做<实战|手把手教你用Python爬虫(附详细源码) ...

  4. JUC.Condition学习笔记[附详细源码解析]

    JUC.Condition学习笔记[附详细源码解析] 目录 Condition的概念 大体实现流程 I.初始化状态 II.await()操作 III.signal()操作 3个主要方法 Conditi ...

  5. beautifulsoup解析动态页面div未展开_实战|Python轻松实现动态网页爬虫(附详细源码)...

    用浅显易懂的语言分享爬虫.数据分析及可视化等干货,希望人人都能学到新知识.项目背景事情是这样的,前几天我公众号写了篇爬虫入门的实战文章,叫做<实战|手把手教你用Python爬虫(附详细源码)&g ...

  6. 自动化测试如何保持登录状态_自动化测试po模式是什么?自动化测试po分层如何实现?-附详细源码...

    一.什么是PO模式 全称:page object model 简称:POM/PO PO模式最核心的思想是分层,实现松耦合!实现脚本重复使用,实现脚本易维护性! 主要分三层: 1.基础层BasePage ...

  7. Python编程:实现词云生成(附详细源码)

    Python编程:实现词云生成(附详细源码) 词云是一种数据可视化的方式,它可以用来展示某个主题下的主要关键词汇.在Python中,我们可以使用 wordcloud 库来实现词云的生成.本文将带您一步 ...

  8. C++实现successive approximation渐进法(附完整源码)

    C++实现successive approximation渐进法 C++实现successive approximation渐进法算法完整源码(定义,实现,main函数测试) C++实现success ...

  9. 【Pygame小游戏】神还原【欢乐无穷的双人坦克大战】小程序游戏,上手开玩~(附完整源码)

    前言 嘿!我是栗子同学,欢迎大家阅读这篇<坦克大战双人版游戏编程>. 我相信这个游戏的话对于大家可能会比较难,刚开始学习的话这个代码就直接发给大家玩一玩的 哈,但是大家可以看看这个代码啦! ...

  10. 告别尬聊,解锁秀场+社交新玩法 (内含源码/Demo)

    直播已成为用户的生活习惯之一 艾媒咨询数据显示:2021年直播用户规模达到6.35亿人,在线直播用户以年轻群体为主,24岁及以下用户占比49%,30岁以下用户接近8成. 众所周知,Z世代用户是一个社交 ...

最新文章

  1. 资源监控工具Spotlight-使用说明
  2. ssh 连接_怎样解决Linux环境下远程连接ssh速度慢的问题
  3. 计算机技术停滞,究竟什么原因让科技停滞不前呢?
  4. Tomcat目录结构及Tomcat Server处理一个http请求的过程
  5. C++实现Dijkstra(迪杰斯特拉)算法(附完整源码)
  6. axure选中后横线切换_Axure8.0|动态面板内容简单切换技巧
  7. 酷派手机android版本,酷派大神F2的手机系统是什么?能升级安卓4.3吗?
  8. Yii GridView
  9. shell-数组排序
  10. 算法导论第三版第二章答案
  11. 数据库建模工具Pdman
  12. 针对BT防御方案——飞鱼星路由器
  13. Java银行账户管理子系统
  14. poi-tl导出word出错
  15. sqlserver只剩mdf数据文件如何附加
  16. 【遗传算法】模拟二进制交叉SBX与多项式变异
  17. python报错ValueError: Found input variables with inconsistent numbers of samples: [x,y]
  18. 价值百万的2022年度总结
  19. MFC连接sqlite3数据库
  20. 【java】中文转拼音遇到的奇葩事件

热门文章

  1. 英语思维导图大全 基础语法(二)
  2. L2 Switching
  3. 2021-07-30-DJ-005 Django模型的数据批量加载
  4. 985本科,自学JAVA四个月,我用二年时间从银行外包跳进了阿里!
  5. 区块链交易性能、隐私保护、监管问题
  6. JVM成神之路(一)---咱们为什么要学习JVM
  7. python selenium模拟浏览器操作实战(武汉大学原教务系统)
  8. 手把手教你App推广时如何能找到100个以上渠道!
  9. 线性代数(1):行列式和展开式
  10. ThinkPad E14 Slim 使用报告