title image


Smiley Re: Falsches Ergebnis bei einfacher Berechnung
Hallo



Dim z1 As Integer, z2 As Integer, z3 As Integer, r As Integer

z1 = -1043.6

z2 = 600

z3 = 443.6

MsgBox z1 + z2 + z3



Nanu? Gibt 0 ;)





Dim z1 As Double, z2 As Double, z3 As Double, r As Double

z1 = -1043.6

z2 = 600

z3 = 443.6

MsgBox z1 + z2 + z3



Sowas, ergibt 1,13686837721616E-13 :<



Nein, das liegt dan dem Datentyp, den VB einer Zahl zuweist. Wenn nichts angegeben, so ist es der Datentyp Variant, der wiederum den Typ Double aufnehmen kann. VB versucht immer einen passenden Datentyp zu einer Zahl herrauszufinden. In Deinem Fall hatt VB entschieden mit Doppelter Genauigkeit zu rechnen und Rundete das Ergebnis einer Rechnung nicht. Beim Datentyp Integer wird z.B. automatisch der Kommazahlwert abgeschnitten und dan mit dem gerundetem Ergebniss Gerechnet.



Gruss THORAX



geschrieben von

Login

E-Mail:
  

Passwort:
  

Beitrag anfügen

Symbol:
 
 
 
 
 
 
 
 
 
 
 
 
 

Überschrift: