Warum Overflow?
20.07.2022 23:10:49
Rolf
ich bearbeite eine eigentlich bedeutungslose Aufgabe: Welche der Zahlen ABCDE sind durch die umgekehrten Zahlen EDCBA restlos teilbar. Die Ziffern A bis E seien jeweils unterschiedliche Ziffern.
Ich wollte nun Schleifen bilden, um A bis E jeweils durchzutesten. Allerdings bekomme ich eine Fehlermeldung (Überlauf) bei der Berechnung der Kombination EDCBA (Rück). Warum?
Danke.
Rolf
Sub Spektrum()
Dim A As Integer
Dim B As Integer
Dim C As Integer, D As Integer, E As Integer
Dim Hin As Integer, Rück As Integer
For A = 1 To 9
For B = 0 To 9
If B = A Then GoTo errorB
For C = 0 To 9
If C = A Or C = B Then GoTo errorC
For D = 0 To 9
If D = A Or D = B Or D = C Then GoTo errorD
For E = 1 To 9
If E = A Or E = B Or E = C Or E = D Then GoTo errorE
Hin = 10000 * A + 1000 * B + 100 * C + 10 * D + E
Rück = 10000 * E + 1000 * D + 100 * C + 10 * B + A
If Hin Mod Rück = 0 Then
MsgBox Hin & ", " & Rück
End If
errorE:
Next E
E = 1
errorD:
Next D
D = 0
errorC:
Next C
C = 0
errorB:
Next B
B = 0
Next A
End Sub