Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //*****************************************************************************************************
- //*Name: prog.java //Zahlenraten
- //*Aufgabe: Ein Programm erzeugt eine zufällige ganze Zahl zwischen 0 und 1000. Der Benutzer soll diese
- //*Zahl erraten. Dazu gibt er eine Zahl ein. Das Programm gibt daraufhin aus, ob die Zahl zu groß, zu
- //*klein oder richtig ist. Das Programm merkt sich die Anzahl der Versuche. Das Programm testet, ob die
- //*Zahl im erlaubten Bereich liegt (1 bis 999) und ob es eine ganze Zahl ist. Im Fehlerfall soll dem
- //*Benutzer mitgeteilt werden, ob die Zahl ausserhalb des erlaubten Bereiches liegt oder keine Zahl
- //*war. Nach 12 erfolgslosen Versuchen gibt das Programm eine Meldung des Mitleids aus und fragt, ob es
- //*beendet werden oder ein weiteres Spiel geben soll. Fall richtig geraten wurde, kommt eine lobende
- //*Meldung und ebenfalls die Frage nach neuem Spiel oder Abbruch.
- //*****************************************************************************************************
- import java.io.*; // Bibliothek in/output einbinden
- import java.util.*; // Bibliothek Utilities einbinden
- public class prog { // benennen der Datei
- public static void game() throws IOException{ //
- Random zufallsGenerator = new Random (); // Installation des Zufallsgenerators
- int input = 0; // Der Tipp des Spielers
- int versuche = 0; // Die Zahl der Versuche
- boolean loss = false;
- System.out.println("Gesucht ist eine Zahl zwischen 0 und 1000...");
- int zahl = zufallsGenerator.nextInt(998)+1; // Zufallszahl zwischen 0 und 1000 erzeugen
- do { // do-while da mind. 1 Versuch
- System.out.print(""+(versuche+1)+". Versuch?");
- try {
- do {
- input = new Integer(new BufferedReader(new InputStreamReader(System.in)).readLine()).intValue();
- if (input < 1 || input > 999)
- System.out.println("Die Zahl liegt nicht im gesuchten Bereich!");
- }
- while (input < 1 || input > 999);
- versuche++; // Versuche mitzaehlen
- if (input < zahl) // Vergleich
- System.out.println("Die gedachte Zahl ist groesser!");
- else if (input > zahl) // Damit nicht auch Ausgabe bei richtigem Versuch
- System.out.println("Die gedachte Zahl ist kleiner!");
- if (versuche == 12) loss = true;
- } // try
- catch (NumberFormatException nfe) { // NumberFormatException gegen falsche Eingaben
- System.out.println("Ungueltige Eingabe!");
- } // catch
- catch (IOException ioe) {
- System.out.println("Fehler: "+ioe.getMessage());
- } // catch
- } // do
- while (!loss); // Solange Versuchen, bis korrekt
- System.out.println("Richtig! Mit "+versuche+" Versuchen erraten!"); // Anzahl Versuche ausgeben
- System.out.println("Willst du nochmal spielen? (j / n)");
- String janein = "";
- do {
- janein = new BufferedReader(new InputStreamReader(System.in)).readLine();
- if (!(janein.equals("j")) && !(janein.equals("n")))
- System.out.println("Ungueltige Eingabe!");
- else if (janein.equals("j"))
- game();
- else
- System.exit(0); // wenn nein, beenden
- }
- while (!(janein.equals("j")) && !(janein.equals("n")));
- } //game
- public static void main (String[] args) throws IOException { // "wichtigste" Methode
- game();
- } // main
- } // class
Add Comment
Please, Sign In to add comment