在指定范围内生成一个随机数作为目标值,用户对目标值进行猜测。

import java.util.Random; // 随机数
import java.util.Scanner; // 获取用户输入 public class Example {
public static void main(String[] args) {
Random rand = new Random();
Scanner in = new Scanner(System.in); // in 为一个变量
// 是否开始游戏
boolean isPlay = true;
// 设置游玩次数
int count = 7;
// 设置已玩次数
int havePlay = 0; // 设置随机数边界值 (这里也可以由用户自行输入)
int min = 10;
int max = 90; // 指定范围[min,max]随机数公式:Random.nextInt(max-min+1)+min;
int randNum = rand.nextInt(max-min+1)+min;
// 生成目标值在(min,max)双开区间
int goal = randNum;
if (randNum == min) {
goal += 1;
}else if (randNum == max) {
goal -= 1;
} // 逻辑部分
while(isPlay) {
if (havePlay==0) { // 首次游玩时给出范围
System.out.println("指定范围为:(" + min + ", " + max + "),输入负数可退出游戏。");
}
System.out.println("请输入你的猜想:");
int guessNum = in.nextInt(); // 读入猜测数字
count--; // 每猜一次,猜测机会减少一次
havePlay++; // 每猜一次,已玩次数增加一次 // 游戏规则:1 输入负数,退出游戏。 2 猜中答案,跳出循环,游戏结束。3 猜测数字和目标值的关系对比
if (guessNum < 0) {
System.out.println("玩家选择退出游戏。");
isPlay = !isPlay;
} else if (guessNum == goal) {
System.out.println("恭喜您用了" + havePlay + "次猜中了答案!答案为" + goal + "。游戏结束~");
break;
} else if (guessNum > goal && count > 0) {
System.out.println("比目标值大了哦~您还剩" + count + "次机会。");
} else if (guessNum < goal && count > 0) {
System.out.println("比目标值小了哦~您还剩" + count + "次机会。");
} else if (count <= 0) {
System.out.println("您的机会已经用尽,正确答案为:" + goal);
break;
}
}
}
}

 (运气比较好,两次就猜中了。。。)

游戏改良:在这个程序中,我们还可以规定:1. 随机数边界值;2. 游玩的次数。

猜数字游戏(随机数和Scannner的应用)的更多相关文章

  1. C语言猜数字游戏

    猜数字游戏,各式各样的实现方式,我这边提供一个实现方式,希望可以帮到新手. 老程序猿就不要看了,黑呵呵 源代码1 include stdio.h include stdlib.h include ti ...

  2. java 猜数字游戏

    作用:猜数字游戏.随机产生1个数字(1~10),大了.小了或者成功后给出提示. 语言:java 工具:eclipse 作者:潇洒鸿图 时间:2016.11.10 >>>>> ...

  3. 【原创Android游戏】--猜数字游戏Version 0.1

    想当年高中时经常和小伙伴在纸上或者黑板上或者学习机上玩猜数字的游戏,在当年那个手机等娱乐设备在我们那还不是很普遍的时候是很好的一个消遣的游戏,去年的时候便写了一个Android版的猜数字游戏,只是当时 ...

  4. 【原创Android游戏】--猜数字游戏V1.1 --数据存储,Intent,SimpleAdapter的学习与应用

    --------------------------------------------------------------- V0.1版本 上次做完第一个版本后,发现还有一些漏洞,并且还有一些可以添 ...

  5. Java完成简单猜数字游戏v2.0

    猜数字游戏v2.0 优化了获取随机数.输入数据超出边界值的代码,并增加了异常处理,能够在玩家输入错误数据错误时给出可靠指引,希望对和我一样的新人有帮助, 最后希望有大神愿意帮我解决代码优化的问题,谢谢 ...

  6. Python实现猜数字游戏1.0版

    本文由荒原之梦原创,原文链接:http://zhaokaifeng.com/?p=702 """ 功能: 随机生成一个数字,最多有3次猜测机会,如果第一次没有猜对,则从第 ...

  7. 猜数字游戏 在控制台运行--java详解!了;来玩

    import java.util.Scanner;//导入包 import java.util.Scanner; 注意格式 符号的使用 public class Demo{ //猜数字游戏 练习 pu ...

  8. java & python猜数字游戏对比

    1.java版 package day03; import java.util.Random;import java.util.Scanner; /** * 猜数字游戏 * 随机生成一个1-100之间 ...

  9. jQuery学习(1)猜数字游戏

      jQuery是一个快捷.小型且特征丰富的JavaScript库.它使得HTML文档遍历及操作,事件处理,动画,Ajax等更简洁方便.它通过调用一个简单易用的API,就能在各种浏览器中使用.由于jQ ...

  10. Java用户输入数值,做简单的猜数字游戏,导入基础的工具包util

    Java用户输入数值,做简单的猜数字游戏,导入基础的工具包util,导入包的方法为,import java.util.*: 完整的实例代码: /* 导入基础工具包 */ import java.uti ...

随机推荐

  1. Ubuntu上安装tftp服务

    1. 安装 sudo apt install tftpd-hpa 2.设置工作目录 mkdir ~/tftpdroot tftpdroot 3.修改配置文件 sudo vi /etc/default/ ...

  2. 2. FTP 服务器安装

    vsftp 安装(linux) Linux : 安装,创建虚拟用户,配置,防火墙设置 1. 安装 执行yum -y install vsftpd 注意: (1) 是否使用sudo权限执行请根据您具体环 ...

  3. Centos7.4 Storm2.0.0 + Zookeeper3.5.5 高可用集群搭建

    想了下还是把kafka集群和storm集群分开比较好 集群规划: Nimbus Supervisor storm01 √ √ storm02 √(备份) √ storm03 √ 准备工作 老样子复制三 ...

  4. 实验吧-隐写术-guess(outguess)

    给了一张图片: 看了看属性,没啥东西. 根据题目:guess guess guess不出你就out了 猜测是用outguess,于是上linux,进入outguess文件夹,执行命令:outguess ...

  5. bash 内嵌命令 printf 用于进制转换

    printf - 格式化并显示数据 printf "%d" 0x10 printf "%x" 16

  6. ORM——Mybatis

    引言 ORM 是 blablabla…… Mybatis知识点

  7. Docker 搭建开源 CMDB平台 “OpsManage” 之 Redis

    整体结构如下图   先来在 172.16.0.200 安装docker-ce (新)或 docker-io(旧)      0: Docker-ce  (新版本  Docker version 17. ...

  8. 使用TestNG-xslt美化测试报告

    用TestNG测试后,自动会生成html的测试报告,不过相信大家都有感觉,自动生成的测试报告太难看了,所以我们又用了ReportNG来美化它.在 这里给大家再介绍一下比reportNG还要稍稍美观一点 ...

  9. springboot 自定义错误jsp页面

    1.总览 2.application.properties spring.mvc.view.prefix=/WEB-INF/pages/ spring.mvc.view.suffix=.jsp#关闭w ...

  10. tensorflow--保存加载模型

    s=mnist.train.next_batch(batch_size)print(xs.shape)print(ys.shape) # #从集合中取全部变量# tf.get_collection() ...