Re: ValF() ??
Verfasst: 13.09.2010 01:31
Bin ich nu doof oder ist PB nichtmal in der Lage den Wert 0.1 zu verwalten -.-
Ergibt bei mir :"0.10000000149012"
Code: Alles auswählen
test.f = 0.1
Debug test
Code: Alles auswählen
test.f = 0.1
Debug test
Sag mir halt mal wie du diese Zahl in Zweierpotenzdarstellung darstellen würdest.The_Dark_Zim-.- hat geschrieben:Bin ich nu doof oder ist PB nichtmal in der Lage den Wert 0.1 zu verwalten -.-
Ergibt bei mir :"0.10000000149012"Code: Alles auswählen
test.f = 0.1 Debug test
Code: Alles auswählen
#MAXIMUM = 256 ; Müsste aber unendlich sein
Resultat.f = 0.0 ; Angenommen unendlich viele Bits
For k = 4 To #MAXIMUM Step 4
Resultat + Pow(2, -1 * k) + Pow(2, -1 * (k + 1))
Next k
; Leider kämen wir hier nie an:
Debug Resultat
Code: Alles auswählen
#MULTI = 100
zahl.i = 0.15 * #MULTI
Debug StrD(zahl / #MULTI, 2)
Code: Alles auswählen
a.d = 0.1
Debug a
b.d = a*10
Debug b
Code: Alles auswählen
Wert.f = 123400000
NeuerWert.f = Wert + 1
Debug NeuerWert
Code: Alles auswählen
Wert.f = 1
NeuerWert.f = Wert + 123400000
Debug NeuerWert
Excel nimmt komplett andere ROutinen zur Berechnung her. Da wird garantiert mit der Basis 10 gerechnet, was aber den Nachteil hat, das es deutlich langsamer ist.The_Dark_Zim-.- hat geschrieben:Im momment wird das ganze in Excel gerechnet, aber normal müsste sich dann auch Excel verrechnen