• Apfeltalk ändert einen Teil seiner Allgemeinen Geschäftsbedingungen (AGB), das Löschen von Useraccounts betreffend.
    Näheres könnt Ihr hier nachlesen: AGB-Änderung
  • Die Bildungsoffensive hier im Forum geht weiter! Jetzt sollen Kreativität und technische Möglichkeiten einen neue Dimension erreichen. Das Thema in diesem Monat lautet - Verkehrte Welt - Hier geht es lang --> Klick

[Swift] ggT und kgV berechnen

AppDev04

Gala
Registriert
19.10.14
Beiträge
48
Hallo
Für meine App ist es wichtig, dass ich den ggt (größter gemeinsamer Teiler) und kgV (kleinste gemeinsame Vielfache) von verschiedenen Zahlen berechnen kann. Ich habe es jetzt lange versucht etwas zu coden, komme aber nie auf die richtigen Lösungen. Kann mir jemand einen Ansatz geben, wie ich das angehen kann?
 
Wie viele Zahlen willst du denn vergleichen? Wie sah denn deine Lösung aus? Vielleicht ist hilfreich um dir dabei auf die Sprünge zu helfen, statt direkt eine Lösung zu präsentieren.
 
Es soll einmal mit 2 Zahlen und einmal mit 3 Zahlen verglichen werden. Um ehrlich zu sein, abe ich noch keinen richtigen Ansatzpunkt. Ich denke es muss etwas sein mit einem Loop der überprüft, ob die Zahl teilbar ist und noch eine ganze Zahl ergibt
 
Die schnellste Methode beim ggT und zwei Zahlen dürfte wohl der euklidische Algorithmus sein.
Den verwenden auch die meisten Scripts im Internet, die ich kenne.
Ansonsten ggT >2 Zahlen und kgV wirst Du um die Primfaktorzerlegung nicht umhin kommen.
 
Diese Lösung wird auch im Link beschrieben. Quasi Modulo (A % B) in Kombination mit einer Rekursion bis zur 0. Allerdings sind damit natürlich immer nur zwei Zahlen gleichzeitig möglich.