Guest User

Untitled

a guest
May 22nd, 2018
98
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 3.38 KB | None | 0 0
  1. //*****************************************************************************************************
  2. //*Name: prog.java //Zahlenraten
  3. //*Aufgabe: Ein Programm erzeugt eine zufällige ganze Zahl zwischen 0 und 1000. Der Benutzer soll diese
  4. //*Zahl erraten. Dazu gibt er eine Zahl ein. Das Programm gibt daraufhin aus, ob die Zahl zu groß, zu
  5. //*klein oder richtig ist. Das Programm merkt sich die Anzahl der Versuche. Das Programm testet, ob die
  6. //*Zahl im erlaubten Bereich liegt (1 bis 999) und ob es eine ganze Zahl ist. Im Fehlerfall soll dem
  7. //*Benutzer mitgeteilt werden, ob die Zahl ausserhalb des erlaubten Bereiches liegt oder keine Zahl
  8. //*war. Nach 12 erfolgslosen Versuchen gibt das Programm eine Meldung des Mitleids aus und fragt, ob es
  9. //*beendet werden oder ein weiteres Spiel geben soll. Fall richtig geraten wurde, kommt eine lobende
  10. //*Meldung und ebenfalls die Frage nach neuem Spiel oder Abbruch.
  11. //*****************************************************************************************************
  12. import java.io.*; // Bibliothek in/output einbinden
  13. import java.util.*; // Bibliothek Utilities einbinden
  14.  
  15. public class prog { // benennen der Datei
  16.  
  17. public static void game() throws IOException{ //
  18.  
  19. Random zufallsGenerator = new Random (); // Installation des Zufallsgenerators
  20.  
  21. int input = 0; // Der Tipp des Spielers
  22. int versuche = 0; // Die Zahl der Versuche
  23. boolean loss = false;
  24.  
  25. System.out.println("Gesucht ist eine Zahl zwischen 0 und 1000...");
  26.  
  27. int zahl = zufallsGenerator.nextInt(998)+1; // Zufallszahl zwischen 0 und 1000 erzeugen
  28.  
  29. do { // do-while da mind. 1 Versuch
  30.  
  31. System.out.print(""+(versuche+1)+". Versuch?");
  32.  
  33. try {
  34. do {
  35. input = new Integer(new BufferedReader(new InputStreamReader(System.in)).readLine()).intValue();
  36. if (input < 1 || input > 999)
  37. System.out.println("Die Zahl liegt nicht im gesuchten Bereich!");
  38. }
  39. while (input < 1 || input > 999);
  40. versuche++; // Versuche mitzaehlen
  41. if (input < zahl) // Vergleich
  42. System.out.println("Die gedachte Zahl ist groesser!");
  43. else if (input > zahl) // Damit nicht auch Ausgabe bei richtigem Versuch
  44. System.out.println("Die gedachte Zahl ist kleiner!");
  45. if (versuche == 12) loss = true;
  46. } // try
  47. catch (NumberFormatException nfe) { // NumberFormatException gegen falsche Eingaben
  48. System.out.println("Ungueltige Eingabe!");
  49. } // catch
  50. catch (IOException ioe) {
  51. System.out.println("Fehler: "+ioe.getMessage());
  52. } // catch
  53. } // do
  54. while (!loss); // Solange Versuchen, bis korrekt
  55.  
  56. System.out.println("Richtig! Mit "+versuche+" Versuchen erraten!"); // Anzahl Versuche ausgeben
  57. System.out.println("Willst du nochmal spielen? (j / n)");
  58. String janein = "";
  59. do {
  60. janein = new BufferedReader(new InputStreamReader(System.in)).readLine();
  61. if (!(janein.equals("j")) && !(janein.equals("n")))
  62. System.out.println("Ungueltige Eingabe!");
  63. else if (janein.equals("j"))
  64. game();
  65. else
  66. System.exit(0); // wenn nein, beenden
  67. }
  68. while (!(janein.equals("j")) && !(janein.equals("n")));
  69.  
  70. } //game
  71. public static void main (String[] args) throws IOException { // "wichtigste" Methode
  72.  
  73. game();
  74.  
  75.  
  76. } // main
  77. } // class
Add Comment
Please, Sign In to add comment