(int) (Math.random()*100.)

Neuling1

Grünschnabel
Hallo,
ich hab mal ne Frage zu einer Aufgabe, welche wir in den Ferien lösen sollen. An der Fragestelltung verstehe ich eigentlich net, wie man den "Topic-Ausdruck" verwendet.

Hier die Aufgabenstellung:

Die ganzzahlige Variable zufallszahl, kann in einer Schleife zufällige Werte annehmen. Es soll eine Ausnahme ausgelöst und abgefangen werden, wenn der Wert 0 ist. Zu diesem Zweck ist eine Ausnahmeklasse istNull zu erstellen, die eine entsprechende Fehlermeldung gibt. Die Zufallszahl kann mittels (int) (Math.randonm()*100.) erzeugt werden.



Ich hab jetzt mal nachgelesen, und hab rausgefunden das die Funktion Math.random doch eigetnlich nur für double werte genutzt werden kann. Ich wäre hier für einen Lösungsansatz sehr dankbar.
 
Math.random gibt dir tatsächlich ein double zurück und zwar eine Zahl die zwischen 0 und 1 liegt, also z.B. 0.24. Durch das multiplizieren mit 100 erhältst du dann 24.0 und das wird durch das casten mit (int) in eine Ganzzahl (Integer bzw. int) umgewandelt.

Durch multiplizieren mit einer Ganzzahl kann man also den Bereich aus dem Zahlen durch random zurückgegeben werden skalieren (in dem Fall auf 0 bis 100).

(Und sag dem Aufgabensteller mal dass es in Java Standard ist Klassennamen gross zu schreiben, also IstNull bzw. da es eine Ausnahme sein soll sollte noch Exception angehängt werden, das macht dann z.B. IstNullException).
 
Zurück