Java案例猜数字游戏

目案例猜数字游戏

需求

开发一个幸运小游戏,游戏规则如下:

游戏后台随机生成1-20之间的5个数(无所谓是否重复) ,然后让大家来猜数字:

➢未猜中提示:“未命中”,并继续猜测

➢猜中提示: “运气不错,猜中了”,并输出该数据第- -次出现的位置,且输出全部5个数据,最终结束本游戏。

分析

①随机生成5个1-20之间的数据存储起来---> 使用数组

②定义一个死循环,输入数据猜测,遍历数组,判断数据是否在数组中,如果在,进行对应提示并结束死循环;如果没有猜中,提示继续猜测直到猜中为止。
 



1.猜数字游戏的实现步骤?

①动态初始化数组, 存入5个随机的1-20之间的数据

②定义一个死循环,不断的猜数据,遍历数组,判断数据是否在数组中,如果在,进行

总结

对应提示并结束死循环;如果没有猜中,提示继续。

package com.ywyc.demo;

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

public class test1 {
    public static void main(String[] args) {
        //五个1到20之间随机数,让用户猜测,猜中要提示猜中,还有输出该数组在数组中第一次出现的索引,并打印数组内容出来
        //没有猜中继续

        //1、定义一个动态初始化的数组存储五个随机的1-20之间的数据
        int[] date = new int[5];

        //2、动态生成五个1-20之间的随机数并存入到数组中
        Random r = new Random();
        for(int i = 0;i < date.length;i++) {
            // i = 0 1 2 3 4
            date[i] = r.nextInt(20) + 1;
        }
        //3、使用一个死循环让用户猜测
            Scanner sc = new Scanner(System.in);
            OUT:
            while (true){
                System.out.println("请你输入一个1-20之间的整数进行猜测:");
                int guessDate = sc.nextInt();

                //4、遍历数组中的每个数据,看是否数据与猜测的数据相同,相同代表猜中了,给出提示
                for(int i = 0;i < date.length ;i++){
                    if(date[i] == guessDate){
                        System.out.println("你以猜中了该数据,运气不错!你猜中的数组索引是:" + i);
                        break OUT;            //结束了整个死循环,代表游戏结束
                    }
                }
                System.out.println("当前猜测的数在数组中不存在,请重新猜测!");
            }

            //5、输出数组的全部元素,让用户看到确实猜中了
            for(int i = 0 ;i < date.length ;i ++){
                System.out.println(date[i] + "\t");
            }

    }
}

你可能感兴趣的:(java,java,开发语言)