Was koennte das Problem beim Fortran- Compiler sein?

... komplette Frage anzeigen

1 Antwort

das ist normal: der kompiler muss die dezimalschreibweise in das interne real-format umrechnen, daas ist ein format auf basis des 2-er systems. das ist zwangsläufig mit einer rechenungenauigkeit  verbunden.

bei der ausführung willst du den inhalt wieder in dezimalschreibweise sehen, also wird nochmal umgerechnet - wieder mit rundungsfehler - und dann noch mit mehr dezimalstellen als bei der ursprünglichen konstanten.

das wird dir in allen programmiersprachen begegnen.

ausnahme ist, wenn die dezimalschreibweise auch intern benutzt wird, prozessoren von großrechner unterstützen sowas, ev. auch dein fortran, schau mal nach datentyp "decimal"

Antwort bewerten Vielen Dank für Deine Bewertung
Kommentar von Franz1957
16.04.2016, 04:11

Ein Stichwort, unter dem man mehr darüber findet, ist BCD (binary-coded decimal). Es gibt mehrere Arten, das zu machen. Bei packed BCD (packed decimal) werden zwei Dezimalstellen pro Byte gespeichert. In COBOL und PL/I gehören intern dezimal codierte Zahlen zu den normalen Datentypen.

0

Was möchtest Du wissen?