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
}
жыйынтык = gcd(48, 18) // натыйжа 6 болот