美文网首页
4.Java利用伪随机和死循环实现猜数游戏

4.Java利用伪随机和死循环实现猜数游戏

作者: 每天起床都想摆 | 来源:发表于2022-01-06 09:52 被阅读0次

随机数Random类

API截图-JavaSE17

api.jpg

nextInt()

  • nextInt(n)功能只能生成0~n的随机数,范围包括0不包括n
  • 生成的随机数是int型
  • java利用nextInt()只能生成从0开始,n-1结束的数

利用上述第三条特性生成伪随机数,指定区间的办法就是在生成的区间加上差值

例如:需要生成510的随机数,因为5在随机数内,10不在随机数内,因此区间nextInt(10)生成的是010
加上5即nextInt(10)+5可生成515的随机数,则更改之前的上界为5即nextInt(5)+5即可实现510的伪随机

package com.java.test;

import java.util.Random;

/**
 * 生成随机数
 */
public class RandomRange {
    public static void main(String[] args) {
        Random r = new Random();
        //生成3-17区间的随机数,注区间为[3,17],生成次数在10以内随机
        for (int i = 0; i < r.nextInt(10); i++) {
            int a = r.nextInt(15) + 3;      //17作为上界按照需求是随机的,因此实际上界为18,18-3差值为15
            System.out.println(a);
        }
    }
}

猜数游戏

给定区间为[1,100],在该区间内生成一个伪随机数,让用户进行猜数,猜大猜小都给出提示并利用死循环进行反复测试,直到用户成功猜出该随机数为止并统计出猜测的次数

package com.java.test;

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

/**
 * 猜数游戏,数为任意数,利用死循环反复猜测
 */
public class GuessGame {
    public static void main(String[] args) {
        System.out.println("猜数游戏,请合法输入[1,100]的任意数进行猜测");
        Scanner sc = new Scanner(System.in);
        Random r = new Random();

        int count = 0;
        int a = r.nextInt(100) + 1;
        do {
            count++;
            int m = sc.nextInt();
            if (m == a) {
                System.out.println("您经过" + count + "次尝试猜对了");
                System.out.println("正确的数字为:" + a);
            } else if (m > a) {
                System.out.println("您猜的结果过大,请继续尝试!");

            } else {
                System.out.println("您猜的结果过小,请继续尝试!");
            }
        } while (true);
    }
}

相关文章

  • 4.Java利用伪随机和死循环实现猜数游戏

    随机数Random类 API截图-JavaSE17 nextInt() nextInt(n)功能只能生成0~n的随...

  • python中random模块功能详解(python工程狮)

    random — 生成伪随机数,random模块为各种分布实现伪随机数的生成。 1.random.random()...

  • C-猜数字游戏

    目的 通过实现猜数字小游戏,达到掌握随机数的产生,去除重复数据,排序的作用 技术 随机数的产生,去除重复数据,排序...

  • 密码学基础之伪随机数

    随机数分类 真随机数 伪随机数2.1 强伪随机数2.2 弱伪随机数 真随机数:其定义为随机样本不可重现。实际上只要...

  • Python random 模块详解

    我们可以先来了解下伪随机数和真随机数的概念。 伪随机数:伪随机数是用确定性的算法计算出来自[0,1]均匀分布的随机...

  • 多线程环境下生成随机数

    生成伪随机数据 Java里有伪随机型和安全型两种随机数生成器。伪随机生成器根据特定公式将seed转换成新的伪随机数...

  • rand()/srand()

    一、rand() rand()函数用来产生随机数,但是,rand()的内部实现是用线性同余法实现的,是伪随机数,由...

  • bitcoin源码-1-获取密钥对

    关键概念 随机数我们在软件中一般使用的随机数实际上是伪随机数,具有统计学伪随机性。统计学伪随机性指的是在给定的随机...

  • Python猜数小游戏

    今天给大家带来一个Python猜数小游戏,游戏十分简单,系统自动生成一个随机数,由玩家猜数,系统提示偏大或偏小,直...

  • 生成随机数

    两个C函数 rand()函数生成的随机数是伪随机数,所谓伪随机数,指的是程序每次运行,生成的随机数都是不变的,生成...

网友评论

      本文标题:4.Java利用伪随机和死循环实现猜数游戏

      本文链接:https://www.haomeiwen.com/subject/qhclcrtx.html