首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >java的反向猜谜游戏

java的反向猜谜游戏
EN

Stack Overflow用户
提问于 2019-08-08 02:21:15
回答 1查看 179关注 0票数 0

我一直在尝试创建一个反向猜测游戏,其中用户将输入一个数字,然后程序/机器人将尝试猜测用户给出的数字。我在程序中遇到了随机生成器的问题。例如,当用户输入诸如157之类的数字时,机器人将生成一个数字。如果机器人给出的数字低于157,则用户将单击较高的按钮(如果数字较高,则单击较低的按钮)。我的问题是它不能正确地生成,只是给出了一个随机数。

我试过改变Math.random()的公式,但我还是想不通。

以下是我在netbeans中为jbutton (更高)编写的代码:

代码语言:javascript
复制
if(con > con2) {
    int generator = (int)(Math.random() * (1 + high - low))+low;
    String conv = Integer.toString(generator);
    jTextField2.setText(conv);
}
EN

回答 1

Stack Overflow用户

发布于 2019-08-08 02:39:27

你的问题很可能不在于你的随机数生成。当我运行以下命令时:

代码语言:javascript
复制
int high = 20;
int low = 10;
for(int i = 0; i < 20; ++i)
{
    int generator = (int)(Math.random() * (1 + high - low))+low;
    System.out.print(generator+" ");
}

我得到以下输出:

18 19 12 11 19 17 15 19 14 16 16 14 10 20 13 20 11 14 20 15

这会生成10和20之间的随机数,包括10和20。所以,如果你的随机数生成遇到了问题,有几种可能性:

  • 您的jTextField2.setText值被忽略
  • 您的jTextField2.setText值被覆盖
  • 您的值low和D12不是您认为的值<代码>H213<代码>H114您的值<代码>D15和<代码>D16同时/在<代码>D17语句运行<代码>H218<代码>H119之前,您的<代码>D21语句的条件D20永远不会满足,因此D22 D22永远不会在第一个placeThe中调用。要解决此问题,最好的方法是调试程序的其余部分。因为随机数的生成显然是起作用的。
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/57400240

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档