私はJavaで推測ゲームを作成しました。それはかなりシンプルです:コンピュータは乱数を選択し、ユーザーは5,10、または20のチャンスでその数を推測するかどうかを選択します。それぞれの推測の後、プログラムは彼らの推測が魔法の数よりも高いか低いかを彼らに伝えます。彼らが数字を推測すると、彼らはお祝いのメッセージを受け取り、彼らは再びプレイしたいかどうか尋ねられます。彼らが数字を推測しない場合、彼らはまたメッセージを受け取り、彼らが再びプレイしたいかどうか尋ねられます。私のコードに追加したいと思っているようなものはありません。 ユーザーがマジックナンバーを推測すると、おめでとうメッセージの後にこのようなことをします:推測ゲームで連続した数字を印刷する(java)?
おめでとう、ボブ!あなたは6つの推測で魔法の数を推測しました。 、
私はこれを試してみました、私はすぐにどんな意味がありませんでした実現:
あなたはこれらの推測を使用していませんでしたしかし、ここから私は立ち往生しています。
System.out.println("You did not use these guesses: "+ (i-numberOfGuesses));
これを含めてどうすればよいですか?私は配列を使用したくないです。
import java.util.Random;
import java.util.Scanner;
public class NewClass
{
public static void main(String [] args)
{
final String SENTINEL = "no";
int guess;
String playAgain;
int numberOfGuesses;
Scanner scan = new Scanner(System.in);
System.out.print(" Enter your name: ");
String name = scan.next();
System.out.print(" Would you like to try to guess a number? (Yes or No):");
String answer = scan.next();
while(!answer.equals(SENTINEL)){
if (answer.equals("yes"))
System.out.print("How many guesses would you like? (5, 10, 20): ");
do {
numberOfGuesses = scan.nextInt();
if (numberOfGuesses == 5 || numberOfGuesses == 10 || numberOfGuesses == 20)
break;
System.out.print("How many guesses would you like? (5,10,20): ");
} while (true);
Random random = new Random();
int randomNumber = random.nextInt(100) + 1;
{
for(int i = 1; i <= numberOfGuesses ; i++){
System.out.print("Enter guess #"+i+": ");
guess = scan.nextInt();
if (guess > randomNumber && guess <= 100)
System.out.println("Your guess, "+guess+", is greater than the magic number.");
else if (guess < randomNumber && guess > 0)
System.out.println("Your guess, "+guess+", is less than the magic number.");
else if (guess == randomNumber){
System.out.println("Congratulations, "+name+"! You guessed the magic "
+ "number in "+i+" guesses.");
System.out.println("You did not use these guesses: "+ (i-numberOfGuesses));
break;
}
else
i--;
if (i == numberOfGuesses)
System.out.println("Sorry, " + name+", you did not guess the magic "
+ "number, " + randomNumber + ", in "+ numberOfGuesses + " tries.");
}
System.out.print("Would you like to try to guess a number? (Yes or No):");
answer = scan.next();
}
}}}