[英]How do I create a for loop for this Guessing game?
我真的不知道如何表達這個,這就是為什么這些問題看起來有點奇怪或像初學者一樣。 我正在為我的 Java 課程作業創建一個猜謎游戲,但我在某一方面遇到了問題。
這是我迄今為止的全部代碼:
import java.util.Random;
import java.util.*;
public class GuessingGame{
public static void main(String args[])
{
System.out.println("Welcome to the greatest Guessing Game known to mankind!");
System.out.println("-------------------------------------------------------\n");
System.out.println("You will be guessing what number I am guessing by entering your guess.");
System.out.println("The number will be between 1 to 100\n");
Scanner start = new Scanner(System.in);
System.out.println("Do you want to start the game?(1 for Yes, 2 for fun facts before starting the game!)\n");
int getStart = start.nextInt();
// testing random number generator
//System.out.println(Math.random() * 100);
if(getStart == 1)
{
Process();
}
}
public static void Process ()
{
int max = 100;
int min = 1;
Random ranNum = new Random();
int ActualNum = min + ranNum.nextInt(max);
System.out.println(ActualNum);
//for(int i = getGuess; i == ActualNum; i++)
//{
Scanner guess = new Scanner(System.in);
System.out.println("\nI am thinking of a number...");
System.out.println("What's your guess?\n");
int getGuess = guess.nextInt();
if (getGuess < ActualNum)
{
System.out.println("Higher!");
}
if (getGuess == ActualNum)
{
System.out.println("\nCorrect! You've won!");
}
//}
}
}
如您所見,我注釋掉了 For 循環部分,但我正在嘗試創建一個 for 循環,以便它獲取 getGuess,即用戶輸入,直到用戶正確輸入為止。 我希望它繼續給出“猜得更高!” 或“猜得更低!” 每次用戶輸入一個數字時都會提示,而無需運行一次並完成程序。
謝謝,我希望我提出問題的方式是有道理的。 我是初學者,需要幫助。 :)
順便說一句:我知道我正在打印他們必須猜測的數字。 我只是在測試一些東西。
嘗試做這樣的事情
int getGuess = 0;
while (getGuess != actualNum) {
System.out.println("What's your guess?\n");
Scanner guess = new Scanner(System.in);
getGuess = guess.nextInt();
if (getGuess < actualNum) {
System.out.println("Higher!");
}
if (getGuess == actualNum) {
System.out.println("\nCorrect! You've won!");
}
}
一種簡單的方法是更改 getGuess 變量的范圍並使用 while 循環。 通過這種方式,您可以在每次嘗試進入循環時檢查該值。 將值初始化為不會進行檢查的值(例如 0,因為它不在 [1,100] 中)。
[...]
int getGuess = 0;
Scanner guess = new Scanner(System.in);
while(getGuess != ActualNum)
{
System.out.println("\nI am thinking of a number...");
System.out.println("What's your guess?\n");
getGuess = guess.nextInt();
if (getGuess < ActualNum)
{
System.out.println("Higher!");
}
if (getGuess == ActualNum)
{
System.out.println("\nCorrect! You've won!");
}
}
[...]
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.