Basics / Kommafehler
Thomas
- perl
moinse
kann mir bitte einer plausibel erklären warum folgender sachverhalt so ist wie er ist, damit ich mein vertrauen in perl zurückgewinne?
ich hab grad mehrere stunden verbraten weil mir das nicht bewusst war:
print "ich werde nicht ausgegeben" if 15 * 4 > 60;
print "ich werde ausgegeben o_O" if 1.5 * 0.4 > 0.6;
wär es jetzt sowas wie 100/9*4.5 gewesen, hätte ich verständnis, aber nicht mit 1.5*0.4
edit: mein Perl rennt mit ActiveState 5.8.8.822
Hi,
kann mir bitte einer plausibel erklären warum folgender sachverhalt so ist wie er ist, damit ich mein vertrauen in perl zurückgewinne?
ich hab grad mehrere stunden verbraten weil mir das nicht bewusst war:
print "ich werde nicht ausgegeben" if 15 * 4 > 60;
print "ich werde ausgegeben o_O" if 1.5 * 0.4 > 0.6;
> wär es jetzt sowas wie 100/9\*4.5 gewesen, hätte ich verständnis, aber nicht mit 1.5\*0.4
Ungenauigkeit von Dezimalbruechen in Binaerdarstellung.
<http://de.wikipedia.org/wiki/Gleitkommazahl#Gleitkommazahlen_in_der_Digitaltechnik>
MfG ChrisB
Ungenauigkeit von Dezimalbruechen in Binaerdarstellung.
http://de.wikipedia.org/wiki/Gleitkommazahl#Gleitkommazahlen_in_der_Digitaltechnik
thx.
wenn ich mal gross bin, entwerf ich ein datentyp (und alles was dazugehört) der periodische zahlenfolgen erkennt und so solche fehler vermeidet. ^^
Moin,
wenn ich mal gross bin, entwerf ich ein datentyp (und alles was dazugehört) der periodische zahlenfolgen erkennt und so solche fehler vermeidet. ^^
Sachte, sachte, gibt mal auf der Kommandozeile ein:
D:>perl -e "print 1.5*0.4"
0.6
Siehst Du dasselbe wie bei mir?
-v: This is perl, v5.6.1 built for MSWin32-x86-multi-thread
Viele Grüße,
Horst
gudn tach!
Sachte, sachte, gibt mal auf der Kommandozeile ein:
D:>perl -e "print 1.5*0.4"
0.6
duffdae! duffdae! duffdae!
dann gib mal
perl -e "print 1.5*0.4-.6"
ein...
prost
seth
Sachte, sachte, gibt mal auf der Kommandozeile ein:
D:>perl -e "print 1.5*0.4"
0.6
c:>perl -e "printf '%.20f', 1.5*0.4"
0.60000000000000009000
-> da guckst du, was? ich hab etwa so geguckt: o_O
Hi,
kann mir bitte einer plausibel erklären warum folgender sachverhalt so ist wie er ist, damit ich mein vertrauen in perl zurückgewinne?
das Vertrauen, dass Du verloren hast, ist das in Gott: Dieser sadistische Omnipotat hat uns Menschen mit zehn Fingern gegeißelt, anstatt eine sehr viel natürliche und nützlichere Zahl wie 8 oder 16 zu wählen. Benützten wir das Oktal- oder Hexadezimalsystem, wäre die Umrechnung in das Binärsystem kein Problem.
Cheatah
gudn tach!
das Vertrauen, dass Du verloren hast, ist das in Gott: Dieser sadistische Omnipotat hat uns Menschen mit zehn Fingern gegeißelt, anstatt eine sehr viel natürliche und nützlichere Zahl wie 8 oder 16 zu wählen.
vielleicht hat er uns auch einfach fuer intelligenter gehalten...
prost
seth
Hi,
das Vertrauen, dass Du verloren hast, ist das in Gott: [...]
vielleicht hat er uns auch einfach fuer intelligenter gehalten...
nun ja, der Allwissende[tm] war ja im Laufe der Menschheitsgeschichte schon öfter überrascht, dass wir Dinge getan haben, die er nicht im voraus gewusst hat. Vielleicht steht ja demnächst wieder der nächste Massenmord an?
Cheatah
Hi,
das Vertrauen, dass Du verloren hast, ist das in Gott: Dieser sadistische Omnipotat hat uns Menschen mit zehn Fingern gegeißelt, anstatt eine sehr viel natürliche und nützlichere Zahl wie 8 oder 16 zu wählen.
Lass mich ueberlegen, was - ausser einem eventuellen Vorteil beim Rechnen - haetten wir davon?
Vermutlich nur etwas weniger oder etwas mehr Spass beim W*chsen ...
MfG ChrisB