【问题标题】:How do I generate a random number and have the user guess whether or not a number is even or odd until they get it right?如何生成一个随机数并让用户猜测一个数字是偶数还是奇数,直到他们猜对了?
【发布时间】:2018-07-13 19:58:23
【问题描述】:
int userInput;

Random randomNumbers = new Random();

numberOne = randomNumbers.nextInt(100);

System.out.print("Enter 0 for even or 1 for odd: ");
userInput = keyboard.nextInt();
label:
while (userInput == 0)
{
    if (userInput % 2 == 0)
        if (numberOne % 2 == 0)
        {
            System.out.println("Congratulations!");
            userInput--;
        }
}
while (userInput == 1)
{
    if (userInput % 2 != 0)
        if (numberOne % 2 != 0)
        {
            System.out.println("Congratulations!");
            userInput--;
        }
}

当输入等于数字时,它表示祝贺,但当输入不正确时,它不会要求用户输入另一个数字。

【问题讨论】:

  • 看来大多数人最多猜两次就猜对了。
  • 只有一个条件 - 是奇数还是不是!你怎么看,当你说它不是正确答案时,有多少人会说这个数字是奇数?
  • 当然,如果你生成另一个随机整数答案之后,那将是另一种问题-任务...

标签: java loops if-statement random while-loop


【解决方案1】:

这也行。

    Random randomNumbers = new Random();
    int numberOne = randomNumbers.nextInt(100);

    Scanner keyboard = new Scanner(System.in);
    int userInput;

    do {
        // You can generate a new number if you want.
        // numberOne = randomNumbers.nextInt(100);
        System.out.println("Enter 0 for even or 1 for odd: ");
        userInput = keyboard.nextInt();
    } while((numberOne % 2) != (userInput % 2));

    System.out.println("Congratulations!");

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-09-06
    • 1970-01-01
    • 2018-09-25
    • 1970-01-01
    • 2015-05-31
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多