4 Stimmen

exp in SBCL ist falsch?

CL-USER> (exp 1)
2.7182817

Und warum? Es sollte 2,7182818 sein (gerundet von 2,7182818284590452353602874713526624977572470936999595749669...)

SBCL 1.0.29.11.debian

8voto

Svante Punkte 49287

Es handelt sich um einen Rundungsfehler, der dem IEEE Single-Float-Format eigen ist.

CL-USER> (exp 1.0d0)
2.718281828459045d0

3voto

Rainer Joswig Punkte 131198

Erfahren Sie mehr über die Gleitkommaarithmetik und ihre "Probleme" in diesem klassischen Papier (PDF):

Was jeder Informatiker über Fließkommaarithmetik wissen sollte

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X