【发布时间】:2017-10-15 21:48:09
【问题描述】:
好的,我知道以前有人问过这个问题,但我就是不知道出了什么问题。以下是我的指示:
“编写一个程序,生成一个1到1000(含)之间的随机数。然后让用户猜测这个数字是多少。如果用户的猜测高于随机数,程序应该显示“太高,再试一次。”如果用户的猜测低于随机数,程序应该显示“太低,再试一次”。程序应该使用一个循环,直到用户正确猜出随机数。
另外,记录用户的猜测次数。当用户正确猜测随机数时,程序应显示猜测的次数。
输入和输出应使用对话框和消息框完成。 "
我整个星期都在工作和阅读这方面的内容,这是我的第二个化身。我正处于我的头因所有阅读而扭曲的地步。我让它在对话框中询问一个数字,然后什么也没有。我缺少什么来保持循环继续进行?请解释是什么以及为什么。提前感谢您的关注。
import java.util.Scanner; // Needed for the Scanner class.
import java.util.Random; // Needed for the Random class.
import javax.swing.JOptionPane; // Needed for JOptionPane.
/**
This program generates a random number guessing game.
*/
public class GuessingNumbersGame
{
public static void main(String[] args)
{
// Create an object and assign a whole random number
// from 1 to 1000 to it.
int rnumber;`
Random randomNumbers = new Random();
rnumber = randomNumbers.nextInt(1000) + 1;
// Ask the user to guess the random number.
String answer;
int guess;
answer = JOptionPane.showInputDialog("Enter a whole " +
"number between 1 and 1000.");
guess = Integer.parseInt(answer);
int guesses;
guesses = 0;
// Create a loop of user guesses versus the random number
// until the user answers correctly and keep track of the
// number of times the user guesses.
while (guess != rnumber);
{
if (guess > rnumber)
{
JOptionPane.showMessageDialog(null,"Too high, try again.");
guess = Integer.parseInt(answer);
guesses++;
}
if (guess < rnumber)
{
JOptionPane.showMessageDialog(null,"Too low, try again.");
guesses++;
}
}
while (guess == rnumber)
{
guesses++;
JOptionPane.showMessageDialog(null,"Congratulations! The correct " +
"number is " + rnumber + ",and you had" + guesses + "guesses.");
}
System.exit(0);
}
}
【问题讨论】:
-
如果您希望人们尝试阅读,请正确缩进您的代码。
标签: java random while-loop