Hallo liebe Community,
ich habe vor wenigen Tagen angefangen mit Java beizubringen und bin somit noch ein blutiger Noob. Vmtl. ist mein Anliegen dementsprechend ein blutiges Noobanliegen.
Derzeit versuche ich mich an einem Programm, welches mir zufällig generierte Lauf-Trainingspläne erstellt.
Jetzt habe ich folgendes Problem bei folgendem Code (Die Variable habe ich der Übersicht halber erstmal aufgeteilt und immer wieder neu zugewiesen):
Zur Erklärung
Ich lasse mir in der Mainmethode eine Instanz der Klasse Trainingsplan generieren. In der Klasse Trainingsplan lasse ich mir im Konstruktor eine Instanz Einlaufen der Klasse Laufeinheit generieren.
Wenn man den Schwierigkeitsgrad in der Konsole (difficulty) eingibt, sollte dementsprächend bei z.B. "50" eine zu Laufende Strecke von bsplw. 4.4 generiert werden.
in 80% der Fälle geschieht dies auch ! In 20 % der fälle wird eine Strecke wie bsplw. 3.4000000000000004 generiert. Jetzt frage ich mich weshalb dies geschieht .... Versuche gerade ununterbrochen den Code so anzupassen, dass lediglich eine einzige Kommastelle mitgeneriert wird.
Hoffe wer kann mir weiterhelfen. Vmtl. ist die Lösung extrem simpel und ich bin einfach zu unterbelichtet ...
Liebe Grüße
Flip
ich habe vor wenigen Tagen angefangen mit Java beizubringen und bin somit noch ein blutiger Noob. Vmtl. ist mein Anliegen dementsprechend ein blutiges Noobanliegen.
Derzeit versuche ich mich an einem Programm, welches mir zufällig generierte Lauf-Trainingspläne erstellt.
Jetzt habe ich folgendes Problem bei folgendem Code (Die Variable habe ich der Übersicht halber erstmal aufgeteilt und immer wieder neu zugewiesen):
Java:
public class Laufeinheit {
public Laufeinheit() {
double route = (Traininggenerator.difficulty / 10);
route = route - (((int)20 * Math.random() ) / 10);
route = route - (route % 0.1);
Zur Erklärung
Ich lasse mir in der Mainmethode eine Instanz der Klasse Trainingsplan generieren. In der Klasse Trainingsplan lasse ich mir im Konstruktor eine Instanz Einlaufen der Klasse Laufeinheit generieren.
Wenn man den Schwierigkeitsgrad in der Konsole (difficulty) eingibt, sollte dementsprächend bei z.B. "50" eine zu Laufende Strecke von bsplw. 4.4 generiert werden.
in 80% der Fälle geschieht dies auch ! In 20 % der fälle wird eine Strecke wie bsplw. 3.4000000000000004 generiert. Jetzt frage ich mich weshalb dies geschieht .... Versuche gerade ununterbrochen den Code so anzupassen, dass lediglich eine einzige Kommastelle mitgeneriert wird.
Hoffe wer kann mir weiterhelfen. Vmtl. ist die Lösung extrem simpel und ich bin einfach zu unterbelichtet ...
Liebe Grüße
Flip
Zuletzt bearbeitet: