Erstellen ein Zahlenratespiel in Java

Zeeshan Afridi 12 Oktober 2023
Erstellen ein Zahlenratespiel in Java

Ein Ratespiel ist für den Benutzer ziemlich einfach; es ist nur das Erraten der richtigen Zahl innerhalb der Zahl k von Versuchen, um das Spiel zu gewinnen. Aber für den Entwickler ist es nicht so einfach.

Erstellen Sie ein Zahlenratespiel in Java

Als Entwickler müssen Sie die Einschränkungen und Algorithmen dieses Spiels berücksichtigen.

Spielregeln erraten

Sie müssen die Regeln im Hinterkopf behalten, um ein Ratespiel zu entwickeln. Um das Spiel zu gewinnen, muss der Benutzer die definierten Einschränkungen des Spiels erfüllen.

  1. Der Nummernbereich kann je nach Ihren Vorlieben unterschiedlich sein; Für dieses Programm reicht der Bereich jedoch von 1 bis 100.

  2. Wenn die erratene Zahl größer ist als die vom Benutzer eingegebene Zahl, antwortet das Programm mit der Meldung: Oops! Your guess was too HIGH, Try some lower numbers.

  3. Wenn die erratene Zahl kleiner ist als die vom Benutzer eingegebene Zahl, antwortet das Programm mit der Meldung: Opss! Your guess was too LOW, try some higher numbers.

  4. Der Benutzer hat gewonnen, wenn die vom Benutzer eingegebene Zahl mit der tatsächlich erratenen Zahl übereinstimmt. Die angezeigte Meldung lautet Perfect! You got it Right!.

    Der Benutzer wird aufgefordert, erneut zu spielen. Er kann das Spiel beenden oder erneut spielen.

  5. Wenn das Limit für die Anzahl der Versuche erreicht ist und der Benutzer die Anzahl nicht erraten hat, wird das Spiel beendet und die Meldung angezeigt:

    The number was 64
    Better luck next time
    Want to Play again?(y/n)
    

    Der Benutzer kann entweder erneut spielen oder das Spiel beenden.

Algorithmus zum Erstellen eines Ratespiels in Java

Der Algorithmus ist eine schrittweise Lösung eines Problems. Der Algorithmus des Ratespiels ist recht einfach.

Sehen wir uns die Schritte zum Entwickeln eines Ratespiels in Java an.

  • Nimm eine Zufallszahl aus dem Programm und speichere sie in einer Variablen vom Datentyp Integer.
  • Nehmen Sie nun die Eingabe des Benutzers entgegen. Der Eingabedatentyp muss mit der tatsächlichen Zufallszahl übereinstimmen.
  • Der nächste Schritt besteht darin, die Nummer des Benutzers und die tatsächliche Zufallszahl zu vergleichen.
  • Wenn die vom Benutzer erratene Zahl größer als die tatsächliche Zufallszahl ist, wird eine Meldung Höherer Wert angezeigt.
  • Wenn die vom Benutzer erratene Zahl kleiner als die tatsächliche Zufallszahl ist, wird eine Meldung Niedrigerer Wert angezeigt.
  • Wenn die vom Benutzer erratene Zahl der tatsächlichen Zufallszahl entspricht. Der Benutzer hat das Spiel gewonnen; bitten, wieder zu spielen.
  • Wenn die Anzahl der Trails erreicht ist und der Benutzer die Anzahl nicht erraten hat, zeigen Sie die tatsächliche Anzahl an und bitten Sie, erneut zu spielen.

Verwenden Sie die Random()-Methode, um Zufallszahlen in Java zu generieren

Das Generieren von Zufallszahlen in Java ist sehr einfach. Java hat eine ganze Bibliothek für Zufallszahlen java.util.Random gewidmet, und Sie können sie einfach mit dem Schlüsselwort import importieren.

Die richtige Syntax zum Importieren von Zufallszahlen in Java lautet import java.util.Random;.

Beispielcode:

package articlecodesinjava;
import java.util.Random;
public class GuessingGame {
  public static void main(String[] args) {
    int x;
    Random generator = new Random();
    System.out.println("5 random numbers from 0 to 10");
    for (int i = 0; i < 5; i++) {
      x = generator.nextInt(5);
      System.out.print(x + " , ");
    }
  }
}

Ausgabe:

5 random numbers from 0 to 10
3 , 1 , 3 , 4 , 4 ,

Beispielcode für ein Ratespiel in Java

package articlecodesinjava;
import java.util.Random;
import java.util.Scanner;

public class GuessingGame {
  public static void main(String[] args) {
    int ans, guess, guessNum = 0;
    final int maxGuesses = 5;
    String str, playAgain = "y";

    Scanner scan = new Scanner(System.in);
    Random generator = new Random();
    ans = generator.nextInt(101) + 1;

    while (playAgain.equals("y") || playAgain.equals("Y")) {
      System.out.println("Hey Welcome to the game \nGuess a number between 1 and 100");
      System.out.println("Guess a number (0 to quit):");

      guess = scan.nextInt();
      guessNum = 0;
      while (guess != 0) {
        guessNum++;
        if (guess == ans) {
          System.out.println("Perfect! You got it Right!");
          break;
        } else if (guess < ans)
          System.out.println("Opss! Your guess was too LOW, try some higher numbers.");
        else if (guess > ans)
          System.out.println("Opps! Your guess was too HIGH, Try some lower numbers");
        if (guessNum == maxGuesses) {
          System.out.println("The number was " + ans + "\nBetter luck next time");
          break;
        }
        System.out.println("Enter your guess (0 to quit):");
        guess = scan.nextInt();
      }
      System.out.println("Want to Play again?(y/n)");
      playAgain = scan.next();
    }
    System.out.println("Thanks for playing!");
  }
}

Ausgabe:

Hey Welcome to the game
Guess a number between 1 and 100
Guess a number (0 to quit):
1
Opss! Your guess was too LOW, try some higher numbers.
Enter your guess (0 to quit):
2
Opss! Your guess was too LOW, try some higher numbers.
Enter your guess (0 to quit):
55
Opss! Your guess was too LOW, try some higher numbers.
Enter your guess (0 to quit):
76
Opps! Your guess was too HIGH, Try some lower numbers
Enter your guess (0 to quit):
78
Opps! Your guess was too HIGH, Try some lower numbers
The number was 64
Better luck next time
Want to Play again?(y/n)
Zeeshan Afridi avatar Zeeshan Afridi avatar

Zeeshan is a detail oriented software engineer that helps companies and individuals make their lives and easier with software solutions.

LinkedIn