Würfeln in java?
Hallo, ich muss ein Programm mit while schreiben das 1000 Mal würfelt und am Ende ausgibt wie oft man jede Zahl bekommen hat
Ich hab die variable mit Math random 1-6 deklariert und schon die If Befehle gemacht die ausgeben wie oft eine Zahl vorkommt, aber meine while Schleife geht nicht, wie muss ich die schreiben damit sie 1000 Mal verschiedene zahlen Würfelt?
Mit freundlichen Grüßen
David Jovanovic
5 Antworten
Ich hab die variable mit Math random 1-6 deklariert und schon die If Befehle gemacht die ausgeben wie oft eine Zahl vorkommt, aber meine while Schleife geht nicht, wie muss ich die schreiben damit sie 1000 Mal verschiedene zahlen Würfelt?
erstell dir doch einfach ein Array mit der Länge 6 und inkrementiere das entsprechende Feld jedes mal in der Schleife, wenn die Zahl durch random generiert wird
Bedenke jedoch, dass der Index bei 0 anfängt - jede 1 inkrementiert Feld 0, jede 2 Feld 1 usw ...
aber meine while Schleife geht nicht, wie muss ich die schreiben damit sie 1000 Mal verschiedene zahlen Würfelt?
woher sollen WIR wissen, wie deine Schleife aussieht? Kopier uns doch mal den Code
- Benutze lieber java.util.Random.
- Benutze eine For- statt einer While-Schleife.
- Verwende switch statt ifs, oder mache einfach ein Array mit der Länge 6, das den Wert in ergebnis-1 um 1 inkrementiert.
Wie eine For-Schleife funktioniert:
for (int i = 0; i < 1000; i++) {...}
Wir definieren die Variable i vom Typen int, und setzen sie auf 0. Dann durchlaufen wir die Schleife, inkrementieren am Ende i um 1, und prüfen dann, ob i noch kleiner als 1000 ist. Wenn Ja, wiederholen wir.
Alternativ, für eine While-Schleife, einfach i vor der Schleife definieren, in der Bedingung schauen, ob i < 1000, und am Ende des Schleifenkörpers i inkrementieren.
Random die Zahl ermittelt und durch eine Schleife laufen lassen und das Ergebnis in den entsprechenden Variablen hochzählen ....
int i = 0;
while (i < 1000) {
++i;
}
Verwende doch einen For-Loop:
for(int i=0;i<1000;++i){
//Do stuff
}
Ja toll, das macht es auch nicht viel schwerer:
int i=0;
while(i<1000){
//Do stuff
++i;
}
Das Problem ist, das genau das bei mir nicht geht 😅, es spuckt mir immer die gleichen zahlen raus, immer nur 3er, 6er und so, niemals gemischt
er soll ein PROGRAMM mit WHILE schreiben , er MUSS