nerviges overflow problem

FJK

Erfahrenes Mitglied
hey jungs

vb6

ich wollte mal kurz (mittlerweile mehrer stunden argh)
zu testzwecken potenzenin ein array schreiben

x = 181
array(i) = x*x*x*x*x*x*x*x*x

x^9


nun bricht er immer ab mit der bemerkung overflow
ich hab jetzt alle datentypen durch, aber es kommt immer der selbe fehler

double kann doch bis 1,79769313486232D+308 laufen
mein kleiner wert von 181^9 geht doch gerade mal bis 2,08D+20
wo ist denn da das problem?

die werte werden auch noch größer, min bis 3D28 sollte die zahl gehen

danke
 
Hmm, das kenn ich...

Probiers mal so:
Code:
Private Sub Form_Load()
  MsgBox Potenz(181, 120)
End Sub

Private Function Potenz(iBasis As Integer, iPotenz As Byte)
  Dim Ergebnis As Double
  Dim i As Byte

  i = 1
  Ergebnis = 1
  
  For i = 1 To iPotenz
    Ergebnis = Ergebnis * iBasis
  Next i
  
  Potenz = Ergebnis
End Function

Da kommt bei mir bei 181^9 = 2,08500535066054E+20 raus ;)
 
Zuletzt bearbeitet:
  • Gefällt mir
Reaktionen: FJK
hmm
so fkt es
danke

gibs ein grund, dafür
das er es in einer schleife macht und ausgeschrieben nicht?
 
Zurück