Lösungsvorschlag 3.2. - Aufgabe 2: Unterschied zwischen den Versionen

Aus ComeniusWiki
Wechseln zu: Navigation, Suche
 
(Eine dazwischenliegende Version von einem Benutzer wird nicht angezeigt)
Zeile 23: Zeile 23:
 
   System.out.println();
 
   System.out.println();
 
    
 
    
   if(!ein.equals("j")&&!ein.equals("n")){System.out.println("Wollen Sie noch einmal spielen? (j/n)"); ein=eingabe.next();}
+
   if(!ein.equals("j")&&!ein.equals("n")){System.out.println("Keine erlaubte Eingabe!! Geben Sie Ihre Antwort neu ein."); ein=eingabe.next();}
 
   else if(ein.equals("j")){wuerfeln();}
 
   else if(ein.equals("j")){wuerfeln();}
 
   else if(ein.equals("n")){System.out.println("Sie haben "+punkte+" Punkte erreicht. Bis zum nächsten Mal!");}
 
   else if(ein.equals("n")){System.out.println("Sie haben "+punkte+" Punkte erreicht. Bis zum nächsten Mal!");}
Zeile 32: Zeile 32:
 
</pre>
 
</pre>
  
'''Hinweis:''' Die Aufgabe muss hier als Klasse umgesetzt werden, da die Variable punkte außerhalb der Methode stehen muss. Andernfalls würde sie bei jedem Methodenaufruf wieder auf 0 gesetzt werden und es wäre keine Ausgabe der Gesamtpunktzahl für mehrere Spiele möglich.
+
'''Hinweis:''' Die Aufgabe muss hier als Klasse umgesetzt werden, da die Variable '''''punkte''''' außerhalb der Methode stehen muss. Andernfalls würde sie bei jedem Methodenaufruf wieder auf 0 gesetzt werden und es wäre keine Ausgabe der Gesamtpunktzahl für mehrere Spiele möglich.

Aktuelle Version vom 15. Oktober 2013, 09:58 Uhr

import java.util.Scanner;

public class Wuerfel{

int punkte=0;
Scanner eingabe = new Scanner (System.in);

public void wuerfeln(){
   int augen=(int)Math.floor(Math.random()*6+1);
   
   System.out.print ("Geben Sie Ihren Tipp ab: ");
   int tipp = eingabe.nextInt();
   
   if (tipp<1||tipp>6){System.out.println("Fehlerhafte Eingabe!"); wuerfeln();}
   else if(tipp==augen){System.out.println("Volltreffer!");punkte=punkte+3;}
   else if (tipp==augen+1||tipp==augen-1){System.out.println("Knapp daneben!"); punkte=punkte+1;}
   else {System.out.println("Daneben!");}
   
   System.out.println();
   System.out.println("Wollen Sie noch einmal spielen? (j/n)");
   String ein=eingabe.next();
   System.out.println();
   
   if(!ein.equals("j")&&!ein.equals("n")){System.out.println("Keine erlaubte Eingabe!! Geben Sie Ihre Antwort neu ein."); ein=eingabe.next();}
   else if(ein.equals("j")){wuerfeln();}
   else if(ein.equals("n")){System.out.println("Sie haben "+punkte+" Punkte erreicht. Bis zum nächsten Mal!");}
   
}

}

Hinweis: Die Aufgabe muss hier als Klasse umgesetzt werden, da die Variable punkte außerhalb der Methode stehen muss. Andernfalls würde sie bei jedem Methodenaufruf wieder auf 0 gesetzt werden und es wäre keine Ausgabe der Gesamtpunktzahl für mehrere Spiele möglich.