Würfel zwei sechsen hintereinander in Java?
Kann mir jemand bei dieser Aufgabe helfen?
Wir lassen den Computer Würfeln! Dabei legen wir fest, dass dieser erst dann aufhören darf, wenn zwei Sechsen direkt nacheinander gewürfelt worden sind. Welcher Schleifentyp ist für diese Aufgabe geeignet? Programmieren Sie eine Routine, welche den Computer solange Zufallszahlen zwischen 1 und 6 generieren lässt, bis zwei Sechsen direkt nacheinander kommen. Sie können hierzu die Funktion Zufall.zufaelligenIntWertGenerieren() benutzen. Geben Sie auch die gewürfelten Zahlen und am Ende ein "Fertig" aus. Eine mögliche Ausgabe könnte folgendermaßen aussehen:
Beginne zu würfeln...
2 2 3 5 2 3 5 1 1 1 1 4 5 4 2 3 4 5 4 4 6 5 4 1 1 6 6
2x6 gewürfelt. Fertig.
2 Antworten
Hier mal ein Beispiel in Python
from random import randint
letzteZahl = -1
aktuelleZahl = -1
print('Beginne zu würfeln')
while not (aktuelleZahl==letzteZahl and aktuelleZahl==6):
letzteZahl = aktuelleZahl
aktuelleZahl = randint(1,6)
print(end=str(aktuelleZahl)+' ')
print('\n2x6 gewürfelt. Fertig.')
Natürlich geht das auch in Java, aber da kommst du ins Spiel ;)
Dabei legen wir fest, dass dieser erst dann aufhören darf, wenn zwei Sechsen direkt nacheinander gewürfelt worden sind. Welcher Schleifentyp ist für diese Aufgabe geeignet?
Grundsätzlich sind die Schleifentypen austauschbar, aber von der Logik drängt sich hier eher eine Schleife auf, die am Ende eine Bedingung überprüft. Das wäre...do....while...klingelt's?
Ich glaube, den Rest schaffst du schon. Beim Programmieren ist es nicht schlecht, schrittweise vorzugehen - das Programm muss nicht sofort perfekt sein. Du könntest z.B. erstmal die Schleife abbrechen lassen, wenn einmal 6 kommt.
Kann man das auch in Java machen?