Code-Beispiel
Größter gemeinsamer Teiler (ggT)
Lizenz: | Erster Autor: | Letzte Bearbeitung: |
k. A. | Mao | 20.08.2010 |
Eine kleine, iterative Funktion zur Berechnung des ggT:
Declare Function ggT(i As Integer, j As Integer) As Integer
Function ggT(i As Integer, j As Integer) As Integer
Dim As Integer Rest
While j<>0
Rest=i mod j
i=j
j=Rest
Wend
ggT=i
End Function
Zum Vergleich: Eine Funktion, die rekursiv arbeitet..
Function ggT(byVal n1 As Integer, byVal n2 As Integer) As Integer 'ggt auf deutsch
Dim As Integer Ergebnis=n1 Mod n2 'Ergebnis gleich bei Initialisierung passend belegen..
Return IIF(Ergebnis, ggT(n2, Ergebnis), n2) 'verwende den mächtigen IIF-Befehl auch in der Rekursion
End Function 'rledigt..
Dim As Integer a=19, b=17, c=42
Print "ggT von " &a*c &" und " & b*c &"=" &ggT(a*c, b*c)
Print "Das Ergebnis sollte=" &c &" sein..:D"
GetKey
End
Aufruf, wie man sieht, geschieht mit dem Zahlenpaar, von dem man den ggT haben möchte.
Iterative Funktion: Mao
Rekursive Funktion: ytwinky
Zusätzliche Informationen und Funktionen |
- Das Code-Beispiel wurde am 11.06.2007 von Mao angelegt.
- Die aktuellste Version wurde am 20.08.2010 von ytwinky gespeichert.
|
|