einstieg:weiteredatentypen:loesungrunden:start
Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
Nächste Überarbeitung | Vorhergehende Überarbeitung | ||
einstieg:weiteredatentypen:loesungrunden:start [2020/09/11 19:30] – angelegt Martin Pabst | einstieg:weiteredatentypen:loesungrunden:start [2021/12/29 11:29] (aktuell) – Externe Bearbeitung 127.0.0.1 | ||
---|---|---|---|
Zeile 1: | Zeile 1: | ||
+ | ====== Eine Zahl auf drei Nachkommastellen runden: ====== | ||
+ | |||
+ | |||
< | < | ||
Zeile 13: | Zeile 16: | ||
// der für jeden beliebigen Wert in der Variable zahl das | // der für jeden beliebigen Wert in der Variable zahl das | ||
// richtige Ergebnis liefert! | // richtige Ergebnis liefert! | ||
- | double zahlGerundet = Math.round(zahl * 1000)/1000; | + | double zahlGerundet = Math.round(zahl * 1000)/1000.0; |
println(zahlGerundet); | println(zahlGerundet); | ||
Zeile 23: | Zeile 26: | ||
</ | </ | ||
\\ \\ | \\ \\ | ||
+ | |||
+ | ===== Erklärung ===== | ||
+ | - Wir multiplizieren die Zahl zunächst mit 1000 und verschieben das Komma dadurch um drei Stellen nach rechts: $82.632876 \cdot 1000 = 82632.876$. \\ Die Stelle, auf die gerundet werden soll, steht jetzt an der " | ||
+ | - Jetzt runden wir: $Math.round(82632.876) = 82632$ | ||
+ | - Am Schluss verschieben wir das Komma wieder um drei Stellen nach links, indem wir durch 1000 dividieren: $82632 : 1000 = 82.632$ | ||
+ | |||
+ | <WRAP center round help 60%> | ||
+ | Warum wird in Zeile 10 des obigen Programms durch 1000.0 dividiert und nicht einfach durch 1000? \\ \\ | ||
+ | Probiere es aus, indem Du oben das " | ||
+ | </ | ||
+ | |||
+ |
einstieg/weiteredatentypen/loesungrunden/start.1599845409.txt.gz · Zuletzt geändert: 2021/12/29 11:29 (Externe Bearbeitung)