zur vorherigen Seite   zum Inhaltsverzeichnis   zur nächsten Seite

Antwort:

ENDSTAND wird mit 10 initialisiert und ist, da mit final deklariert eine Konstante, die nicht geändert werden kann.

Die Würfe

Der Wurf des Computers ist unkompliziert. Es muss nur der Wurf zweier sechs-seitiger Würfel addiert werden.

// Computer wirft
computerwurf = rand.nextInt(6)+1 + rand.nextInt(6)+1 ;
System.out.println("Der Computer wirft: " + computerwurf);

Für den Wurf des Spielers fragt das Programm zuerst welche Würfel verwendet werden sollen:

// Spieler wirft
System.out.print("1 -> 11-seitiger Wuerfel | 2 -> 6-seitiger Wuerfel (1 oder 2)? ");
String wuerfeltyp = scan.nextLine();

Da die Ziffern, die der Anwender eingibt, nicht numerisch verwendet werden, werden sie am besten als String eingelesen. Falls der Anwender aus Versehen etwas anderes als eine Ziffer eingibt, wird das Programm nicht zusammenbrechen. Stringvergleich wird dann verwendet, um zu bestimmen, welche Option verwendet wird. Alles andere als die Ziffer "1" wird den Zweig mit den zwei Würfeln wählen.

if ( wuerfeltyp.equals("1") )
{
  spielerwurf = rand.nextInt(11)+2 ;
  System.out.println("Sie werfen 1 Wuerfel und haben: " + spielerwurf );
}
else
{
  spielerwurf = rand.nextInt(6)+1 + rand.nextInt(6)+1 ;
  System.out.println("Sie werfen 2 Wuerfel und haben: " + spielerwurf );
}

FRAGE 21:

Wäre es nicht besser zu testen, ob der Anwender genau die angegebene Auswahl eingibt?