FAQ 0124: Wie kann ich die Quersumme einer Zahl berechnen?
von Helge Rex
Frage
Wie kann ich die Quersumme einer Zahl berechnen?
Antwort
Es gibt mehrere Lösungsmöglichkeiten für dieses Problem.
Die schnellste Lösung ist Variante 1, die langsamste ist Variante 2 (Laufzeitenmessung).
Function Quersumme(ByVal n As Long) As Long Dim Result As Long n = Abs(n) Do While n <> 0 Result = Result + n Mod 10 n = n \ 10 Loop Quersumme = Result End Function
Function Quersumme(ByVal n As Long) As Long Dim i As Long Dim s As String s = CStr(Abs(n)) n = 0 For i = 1 To Len(s) n = n + CLng(Mid$(s, i, 1)) Next i Quersumme = n End Function
Function Quersumme(ByVal n As Long) As Long Select Case n Case Is < 0 Quersumme = Quersumme(-n) Case Is < 10 Quersumme = n Case Else Quersumme = (n Mod 10) + Quersumme(n \ 10) End Select End Function
Ihre Meinung
Falls Sie Fragen zu dieser FAQ haben, Ihre Erfahrung mit anderen Nutzern austauschen möchten oder auf eine Ergänzung hinweisen möchten, dann teilen Sie uns diese bitte in einem der unten vorhandenen Themen oder über einen neuen Beitrag mit. Hierzu können sie einfach einen Beitrag in einem zum Thema passenden Forum anlegen, welcher automatisch mit dieser Seite verknüpft wird.