Domino 9 und frühere Versionen > ND6: Entwicklung

LS Rundungsproblem

<< < (2/2)

Thomas Schulte:
Was bekommst du denn konkret für ein Ergebnis raus?

Axel:
Danke Andre für den Link. Ich war auch gerade auf dem Weg dorthin.



--- Zitat von: Axel am 24.05.07 - 14:17:35 ---Die Lösung: Addiere zu deinem Nettobetrag einfach 0,005 hinzu. Dann sollte es passen.

--- Ende Zitat ---

Sorry, war nicht ganz korrekt. Wenn man was nur alle Schaltjahre einmal braucht, sollte man vorher doch mal genau nachdenken.   :P


Axel

BMT216A:
Hallo an alle,
erstmal Danke für die schnelle Hilfe.
Ich werde es ähnlich der Methode mit den 0,005 dazuzählen machen. Nur zähle ich 0,000001 dazu - das findet unser Mensch aus dem Rechnungswesen für unbedenklicher wegen eventuellen Fehlern.

@kohlerbv
die Variable Zins habe ich als String deklariert, weil sonst meine Berechnung bei der Auswahl steuerfrei nicht funktioniert hat. Vorher war die Variable eine double Variable.
Wenn Du eine besser Lösung hast, würde ich mich über eine Erklärung darüber freuen.
Danke


PS: Das hab ich im Internet noch zur Rundung gefunden.
IEEE 754 unterscheidet zunächst zwischen binären Rundungen und binär-dezimalen Rundungen, bei denen geringere Qualitätsforderungen gelten.
Bei binären Rundungen muss zur nächstgelegenen darstellbaren Zahl gerundet werden. Wenn diese nicht eindeutig definiert ist (genau in der Mitte zwischen zwei darstellbaren Zahlen) muss in Richtung zur nächstgelegenen geraden Zahl gerundet werden. Damit wird die von Knuth beschriebene statistische Drift in längeren Rechnungen vermieden.
Eine zu IEEE 754 konforme Implementierung muss drei weitere vom Programmierer einstellbare Rundungen bereitstellen: Rundung gegen +Unendlich (immer aufrunden), Rundung gegen −Unendlich (immer abrunden) und Rundung gegen 0 (Ergebnis immer betragsmäßig verkleinern).

Axel:

--- Zitat von: BMT216A am 25.05.07 - 13:57:38 ---PS: Das hab ich im Internet noch zur Rundung gefunden.
IEEE 754 unterscheidet zunächst zwischen binären Rundungen und binär-dezimalen Rundungen, bei denen geringere Qualitätsforderungen gelten.
Bei binären Rundungen muss zur nächstgelegenen darstellbaren Zahl gerundet werden. Wenn diese nicht eindeutig definiert ist (genau in der Mitte zwischen zwei darstellbaren Zahlen) muss in Richtung zur nächstgelegenen geraden Zahl gerundet werden. Damit wird die von Knuth beschriebene statistische Drift in längeren Rechnungen vermieden.
Eine zu IEEE 754 konforme Implementierung muss drei weitere vom Programmierer einstellbare Rundungen bereitstellen: Rundung gegen +Unendlich (immer aufrunden), Rundung gegen −Unendlich (immer abrunden) und Rundung gegen 0 (Ergebnis immer betragsmäßig verkleinern).


--- Ende Zitat ---

Man kann's auch übertreiben.



Ich hatte mit der 0,005er Lösung noch nie Ärger.
 
Axel

BMT216A:
Hallo Axel,

mir würde die Lösung mit 0.005 auch reichen - aber Du kennst leider oder besser gesagt zum Glück unser Rechnungswesen nicht.

In diesem Sinne

schönes Wochenende :D

Navigation

[0] Themen-Index

[*] Vorherige Sete

Zur normalen Ansicht wechseln