繁体   English   中英

使用 math.random 在 java 中进行猜谜游戏

[英]Guessing game in java using math.random

嗨,我正在尝试使用 Math.random 生成 0 到 100 之间的随机数,然后要求用户输入 0 到 100 之间的数字,或者输入 -1 以退出。 如果数字超出范围(而不是 -1),请要求用户输入新数字。 如果用户没有猜对数字,请告诉用户随机数是高于还是低于猜测的数字。 让用户猜测直到他们输入正确的数字或​​输入 -1。 如果他们猜对了,告诉用户尝试了多少次,然后重新开始游戏。 它将继续播放,直到用户退出。

我被困在如何只让用户输入 0-100 以及如何通过输入 -1 退出循环

这是我到目前为止,任何帮助将不胜感激!

import java.util.Scanner;

public class QuestionOne
{
  public static void main(String args[])
  {
   Scanner keyboard = new Scanner(System.in);

   int a = 1 + (int) (Math.random() * 99);
   int guess;

   System.out.println("Guess a number between 0-100");


   while(guess != a){
   guess = keyboard.nextInt();
   if (guess > a)
   {  
     System.out.println("The number is lower!");

   }
   else if (guess < a) 
   {
    System.out.println("higher!");

   }
   else 
   {
     System.out.println("Congratulations.You guessed the number with" + count + "tries!");
   }
   }
  }
}

首先,您对 keyboard.nextInt() 的调用(及其相应的“猜测 0-100 之间的数字”的 println )应该在您的 while 循环中。

那么你应该考虑将你的 while 循环改为

while (true) {
    // read input from user
    if (guess < value) { // tell user their guess is too low
    } else if (guess > value) { // tell user their guess is too high
    } else { // tell user congrats, and call break to exit the while loop }
    }
}

一旦你做对了,你就可以做一些不错的事情,比如检查猜测的数字是否在范围内,跟踪他们做了多少猜测等

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM