Lösungsvorschlag 3.2. - Aufgabe 2
Aus ComeniusWiki
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.