用Java编程这个猜数字游戏

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了用Java编程这个猜数字游戏相关的知识,希望对你有一定的参考价值。

一. 游戏规则

《猜数字》是一款经典的益智类游戏,一般由两个人一起玩,也可由一人和电脑玩。

游戏规则为:

1. 一方出数字,另一方来猜这个数字
2. 出数字方要先想好一个没有重复数字的4位数作为目标数字(不能让猜数字方知道)
3. 猜数字方提供一个4位猜测数字
4. 出数字方要根据猜测数字和目标数字计算出几A几B,作为反馈提供给猜数字方
其中A前面的数字表示位置正确的数的个数,B前的数字表示数字正确但位置不正确的数的个数
如目标数字为“5234”,猜测数字为“5346”,则反馈是1A2B:“5”的数字和位置都正确,记为1A;“3”和“4”的数字正确但是位置错误,记为2B
5. 如猜测数字和目标数字完全相同(反馈为4A0B),则猜测成功,游戏结束
6. 如猜测数字和目标数字不一样(反馈中A的个数小于4),猜数字的一方要根据已有反馈信息,重复3~4步,直至猜出目标数字
7. 如猜数字方在限定次数内未猜出目标数字,则猜测失败,游戏结束

本游戏中,出数字方由电脑来代替。

//写了个猜数字程序~发给你玩玩~
import java.io.*;
import java.util.*;
public class GuessNum
InputStreamReader ir;
BufferedReader br;
Random random;
int count;
public void guess()
random=new Random();
int realnum=random.nextInt(100);
while(true)
try
ir=new InputStreamReader(System.in);
br=new BufferedReader(ir);
int guessnum=Integer.parseInt(br.readLine());
if(guessnum<realnum)
System.out.println("小了~再猜~");
count++;

else if(guessnum>realnum)

System.out.println("大了~再猜~");
count++;

else if(guessnum==realnum)
System.out.println("恭喜你~猜对喽!这个数就是"+guessnum+"~您一共猜了"+count+"次");
count++;

catch(Exception e)
System.out.println("请输入数字!");



public static void main(String[] args)
GuessNum guessnum=new GuessNum();
guessnum.guess();



参考技术A 程序我写完了
分有点少 等你看到联系我爸 给你发过去本回答被提问者采纳

Java基础教程用Java实现猜数字小游戏

✅作者简介:大家好我是hacker707,大家可以叫我hacker
📃个人主页:hacker707的csdn博客
🔥系列专栏:Java基础教程
💖如果觉得博主的文章还不错的话,请👍三连支持一下博主哦🤞

🏆在本周获得了新星计划第三季Python赛道Top1,很感谢粉丝们以及那些帮助我的博主,导师对我的鼓励与支持,在接下来的时间里我会写出更好的文章来回馈粉丝,感谢大家的关注
点击链接进入

猜数字游戏

实现思路🔥

由计算机随机产生1~100的整数。用户猜测计算机产生的数字,并输入数字,当输入的数字与计算机产生的数字相同时输出恭喜你,猜对了。当输入的数字小于计算机产生的数字输出太小了,当输入的数字大于计算机产生的数字输出太大了
✅可以用for循环设定游戏猜的次数,增加代码的可玩性

代码实现🔥

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

public class User 
    public static void main(String[] args) 

        
            Random ran = new Random();//实例化随机对象
            System.out.println("欢迎进入猜数字游戏,祝你玩的愉快");
            int b = ran.nextInt(100) + 1;//随机生成一个整数作为猜的答案
            int i;

            for (i = 0; i < 10; i++) //给游戏设定一个次数,最多输入10次
                System.out.println("请输入一个整数:");

                Scanner a = new Scanner(System.in);//实例化一个输入流对象
                if (a.hasNextInt()) //判断输入的数是否为int类型

                    var c = a.nextInt();//将输入的值赋给c


                    if (c < b) //判断c是否小于答案,如果是就输出下面这段话
                        System.out.printf("太小了,还剩%2d次机会", 9 - i);
                        System.out.println();
                     else if (c > b) //判断c是否大于答案,如果是就输出下面这段话
                        System.out.printf("太大了,还剩%2d次机会", 9 - i);
                        System.out.println();
                     else //否则就是等于答案
                        System.out.println("恭喜你,猜对了");
                        System.out.println("游戏结束,获胜");
                        break;
                    
                 else //如果输入的不是int类型,运行下面这段代码
                    if ("不想玩了".equals(a.next())) //判断输入的是否为不想玩了这几个字,如果是就执行下面这句话
                        System.out.println("结束游戏,不玩了");
                        break;
                     else //否则就输出下面这段话
                        System.out.println("输入错误");
                        i--;//i-1 此次输入不算次数
                    

                
            
            if (i == 10) //判断输入次数是否为10次,如果为十次就输出下面这段话
                System.out.println("游戏结束,失败");
            
        
    


欢迎进入猜数字游戏,祝你玩的愉快
请输入一个整数:
50
太小了,还剩 9次机会
请输入一个整数:
60
太大了,还剩 8次机会
请输入一个整数:
55
太大了,还剩 7次机会
请输入一个整数:
53
猜对了
游戏结束,获胜

结束语🏆

🔥推荐一款模拟面试、刷题神器网站
点击链接注册即可
1、算法篇(398题):面试必刷100题、算法入门、面试高频榜单
2、SQL篇(82题):快速入门、SQL必知必会、SQL进阶挑战、面试真题
3、大厂笔试真题:字节跳动、美团、百度、腾讯…

以上是关于用Java编程这个猜数字游戏的主要内容,如果未能解决你的问题,请参考以下文章

求解编程题目<猜数字>C++/C

java猜数字游戏代码

c语言猜数游戏编程

用C#编写猜数字游戏,

c语言猜数字

Leetcode-299 猜数字游戏