โจทย์: กำหนดอาร์เรย์ตัวเลข หา GCD (Greatest Common Divisor) ของทุกตัว
GCD ของหลายตัว = GCD ของคู่ๆ ซ้ำๆ (pairwise) หรือ ผลคูณเฉพาะตัวประกอบร่วม
โค้ดตัวอย่าง
def findgcd(x, y):
while y:
x, y = y, x % y
return x
l = [22, 44, 66, 88, 99]
num1 = l[0]
num2 = l[1]
gcd = findgcd(num1, num2)
for i in range(2, len(l)):
gcd = findgcd(gcd, l[i])
print("gcd is:", gcd)
ผลลัพธ์
gcd is: 11

สรุป
เรียนรู้วิธีหา GCD ของอาร์เรย์หลายตัวเลข: หา GCD แบบคู่ (pairwise) ซ้ำจนครบทุกตัว