: Wichtig ist, stets zu bedenken, dass die Auflösung von Fließkommawerten begrenzt ist, was zu Rundungsfehlern führt, die oft unerwartete Ergebnisse hervorrufen. Als Beispiel: 1/3 kann nicht exakt dargestellt werden, da der periodische Bruch 0,33333... nicht endet. Folglich liefert die Berechnung von (1/3)*3 nicht 1 sondern 0,999999999... Als ein weiteres Beispiel: 1/10 kann in der Binärdarstellung nicht exakt dargestellt werden sondern ist darin ebenfalls ein periodischer Bruch; folglich ist auch (1/10)*10 oft nicht exakt 1 sondern eher 0,999999999... Aus all diesen Gründen liefern Berechnungen mit Fliesskommazahlen normalerweise keine exakten Ergebnisse sondern Annäherungen. Insbesondere sollten Fließkommazahlen nicht auf Gleichheit getestet werden; und der Programmierer muss stets darauf achten, dass Rundungsfehler sich nicht derart aufschaukeln, dass das Endergebnis völlig unbrauchbar wird. |
: Wichtig ist, stets zu bedenken, dass die Auflösung von Fließkommawerten begrenzt ist, was zu Rundungsfehlern führt, die oft unerwartete Ergebnisse hervorrufen. Als Beispiel: 1/3 kann nicht exakt dargestellt werden, da der periodische Bruch 0,33333... nicht endet. Folglich liefert die Berechnung von (1/3)*3 nicht 1 sondern 0,999999999... Ein weiteres Beispiel: 1/10 kann in der Binärdarstellung nicht exakt dargestellt werden sondern ist darin ebenfalls ein periodischer Bruch; folglich ist auch (1/10)*10 oft nicht exakt 1 sondern eher 0,999999999... Aus all diesen Gründen liefern Berechnungen mit Fliesskommazahlen normalerweise keine exakten Ergebnisse sondern Annäherungen. Insbesondere sollten Fließkommazahlen nicht auf Gleichheit getestet werden; und der Programmierer muss stets darauf achten, dass Rundungsfehler sich nicht derart aufschaukeln, dass das Endergebnis völlig unbrauchbar wird. |
Computer Representation of Numbers