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