Sobes.tech
Junior — Middle

Με ποια δεδομένα ή δομές λειτουργεί ο αλγόριθμος εύρεσης του μεγαλύτερου κοινού διαιρέτη (GCD);

sobes.tech AI

Απάντηση από AI

Ο αλγόριθμος για την εύρεση του μεγαλύτερου κοινού διαιρέτη (ΜΚΔ, GCD) λειτουργεί με ακέραιους αριθμούς. Τα βασικά δεδομένα είναι δύο ακέραιοι αριθμοί, για τους οποίους πρέπει να βρεθεί ο μέγιστος διαιρέτης που διαιρεί και τους δύο χωρίς υπόλοιπο.

Συνήθως χρησιμοποιείται ο αλγόριθμος του Ευκλείδη, ο οποίος αντικαθιστά διαδοχικά το ζεύγος αριθμών με (b, a % b), μέχρι το υπόλοιπο να γίνει μηδέν. Στο τέλος, απομένει ο τελευταίος μη μηδενικός διαιρέτης — αυτός είναι ο ΜΚΔ.

Παράδειγμα σε Swift:

func gcd(_ a: Int, _ b: Int) -> Int {
    var a = a
    var b = b
    while b != 0 {
        let temp = b
        b = a % b
        a = temp
    }
    return a
}

let result = gcd(48, 18) // το αποτέλεσμα θα είναι 6