Məlumdur ki
Bu əsasa görə iki, üç, ..., ədədlərin ən böyük ortaq bölənini ardıcıl hesablamaq mümkündür. Məsələn, dörd ədəd üçün bu bərabərlik doğrudur:
Alqoritmin reallaşdırılması
gcd funksiyası ən böyük ortaq böləni hesablayır.
int gcd(int a, int b)
{
return (!b) ? a : gcd(b, a % b);
}Giriş məlumatlarını oxuyuruq və dəyişənində verilmiş ədədlər üçün ardıcıl olaraq NOD hesablayırıq.
res = 0;
scanf("%d", &n);
while (n--)
{
scanf("%d", &b);
res = gcd(res, b);
}Cavabı çıxırıq.
printf("%d\n", res);Python reallaşdırılması
import mathGiriş məlumatlarını oxuyuruq.
n = int(input())
lst = list(map(int,input().split()))dəyişənində verilmiş ədədlər üçün ardıcıl olaraq NOD hesablayırıq
res = 0
for x in lst:
res = math.gcd(res, x)Cavabı çıxırıq.
print(res)