Java Math.random() methode!
Schönen Tag Community!
ich habe hier folgende Aufgabenstellung und bin etwas überfragt, wobei ich davon überzeugt bin, dass die lösung wie immer denkbar einfach ist ;).
*Ihr Würfel weist die Augenzahlen 1 bis 6 auf und ist nicht gezinkt, das heißt, die Auftrittswahrscheinlichkeit jeder Augenzahl ist gleich. Verwenden Sie die Methode Math.random() um eine zufällige Zahl vom Typ Double im Intervall [0, 1) zu erzeugen.
Durch geeignete Multiplikation, Addition und anschließendes Umwandeln in eine Variable vom Typ Integer erhalten Sie Ihr Würfelergebnis aus dem Intervall [1, 6].*
Ich hoffe es kann mir jemand helfen, ich bin bisher noch nicht allzuweit gekommen^^. um genau zu sein:
public static int rollTheThrDice () { Math.random();
}
das hauptproblem in diesem moment ist, dass ich nicht weiss wie ich die Math methode multiplizieren kann.
Vielen dank für hilfreiche antworten :).
2 Antworten
Warum machst du deine Methode static? Was soll das in diesem Zusammenhang für einen Sinn machen?
Eine Zufallszahl kannst du mit der Methode erzeugen. Sie ist Bestandteil des Pakets "Math". Hast du zu Beginn der Klasse die Verwendung dieses Pakets definiert?
Als nächstes kannst du "Math.random();" nicht einfach so aufrufen. Es du solltest das Ergebnis des Aufrufs auch in einer Variable speichern. Die Methode "random()" erzeugt die besagte Zufallszahl zwischen 0 und 1. (eine lange Kommazahl vom Typ double) Diese musst du mit der Zahl multiplizieren, bis zu der du Zufallszahlen erzeugt haben möchtest (in diesem Fall 6) und 1 addieren, da du sonst Zahlen nur von 0- 5 erhalten würdest.
Anschließend musst du die Zahl nur noch runden und in einer Int- Variable zu speichern. (auf Null Nachkommastellen runden!)
Am Ende die Rückgabe des Ergebnisses/ der Int- Zahl nicht vergessen.
Das geht, indem du die Methode aufrufst. Die erzeugte Zufallszahl wird von dieser ja zurück gegeben.
In die main- Methode schreibst du also:
int Zufallszahl= rollTheDice();
System.out.println(Zufallszahl);
Die Math Methode kannst du so multiplizieren (im Beispiel mit 3):
Math.random()*3
danke erstmal :).
Dass die Methode static ist wird so in der Aufgabenstellung vorgegeben.
So weit bin ich mittlerweile gekommen:
*public class Dices {
}*
nun habe ich nurnoch das problem: wie kann ich in meiner main methode auf den so entstandenen wurf zugreifen?