そのため、乱数を生成し、ユーザーに数値の入力を求めるプログラムを作成する必要があります。また、ユーザーが間違った番号を入力すると、再試行する必要があります。これは私のコードです。
import java.util.Random;
import javax.swing.JOptionPane;
public class Oblig4 {
public static void main (String[] args){
Random rg = new Random();
int randomNumber = rg.nextInt(100);
JOptionPane.showMessageDialog(null, "The program has generated a number,"
+ " You have to guess what number it is.");
String input = JOptionPane.showInputDialog("What is your first guess?");
int number = Integer.parseInt(input);
while (number != randomNumber ) {
JOptionPane.showMessageDialog(null, "You've guessed wrong");
String answer = JOptionPane.showInputDialog("Try again");
}
{JOptionPane.showMessageDialog(null,"Congratulations, you guessed right!");
}
私の問題は、ユーザーが間違って推測した後、2回目に正しい答えを入力したにもかかわらず、ループして「間違っていると推測しました」と表示されることです。
乱数が 4 だとします。3 を入力すると、間違っていると表示され、もう一度やり直すように求められます。ここで 4 を入力しても、まだ間違っていると表示されます。
編集:私のエラーが見つかりました。私は書かなければならなかった
number = Integer.parseInt(answer)
while ループ内。いいえ
int number = Integer.parseIng(answer)
それは私が望まない新しい変数を作るからです。既存のものを変更したいだけです。