LanX: Summierung in for-Schleife gibt falsches Ergebnis

Beitrag lesen

Hi

return Math.round(sum*100)/100;

(Für mehr Stellen einfach ein paar Nullen anhängen :)

Ich wär vorsichtig mit der Division
durch 100, da können wieder tolle Rundungsfehler reinkommen!

Das hängt damit zusammen dass 100 keine 2er Potenz ist
aber intern binär gerechnet und dann ins dezimale umgesetzt wird!

Deswegen 2 Möglichkeiten:

1. ihr rechnet nur Math.round(sum*100) und fügt den Dezimalpunkt per Stringmanipulation ein.

2. ihr rechnet nur Math.round(sum*100+0.5)/100 und schneidet alles nach der 2. Nachkommastelle per Stringbefehl ab.

Tschau
  Rolf