Hi all,
Zitat Zitat von linux_80
Zitat Zitat von izaseba
Scheint aber nur bei den Megas zu sein.
deshalb wird er wohl nicht so oft verwendet.

Müsste man mal probieren, ob der GCC diesen verwendet, und ob man dazu die richtige C-Formel zusammenbringt.
Das Problem mit den Rechenfehlern ist ein systematischer Fehler, der vom verwendeten binären Zahlensystem verursacht wird. Bei einer Umwandlung der Zahl 80 in eine Gleitkommazahl wird die 80 in 0.8 x 10e2 umgewandelt.

Nach IEEE 754 ( http://de.wikipedia.org/wiki/Flie%C3%9Fkommazahl ) wird eine Gleitkommazahl im Singleformat mit 23Bit Mantisse und 8Bit Exponent dargestellt.
Die 0.8 wird in 11001100110011001100110 00000010 umgewandelt (0.79999995231 -> 79.999995231).

Binär gesehen ist 0.8 eine irrationale Zahl. Damit ist der Rechenfehler schon vorprogrammiert ohne Chance korrigiert werden zu können.

Grüße Klaus