Ən kiçik ortaq məxrəc (ƏOM) iki tam ədəd və -nin elə ən kiçik natural ədədidir ki, və -yə tam bölünür. Məsələn, ƏOM(2, 3) = 6, ƏOM(6, 10) = 30.
Ən kiçik ortaq məxrəci tapmaq üçün aşağıdakı formula istifadə edəcəyik:
buradan
a, b \u003c 2 \cdot 10^9 olduğundan, a \cdot b vurulanda int tipini aşmaq ehtimalı var. Hesablama zamanı long long tipindən istifadə edilməlidir.
Nümunə
Misaldakı ədədləri götürək:
buradan
Alqoritmin həyata keçirilməsi
gcd (ən böyük ortaq bölən) və lcm (ən kiçik ortaq məxrəc) funksiyalarını həyata keçirək.
long long gcd(long long a, long long b)
{
return (!b) ? a : gcd(b, a % b);
}
long long lcm(long long a, long long b)
{
return a / gcd(a, b) * b;
}Proqramın əsas hissəsi. Giriş məlumatlarını oxuyuruq.
scanf("%lld %lld", &a, &b);İki ədədin ƏOM-ni hesablayır və çap edirik.
d = lcm(a, b);
printf("%lld\n", d);Python həyata keçirilməsi
gcd (ən böyük ortaq bölən) və lcm (ən kiçik ortaq məxrəc) funksiyalarını həyata keçirək.
def gcd(a, b):
if a == 0: return b
if b == 0: return a
if a > b: return gcd(a % b, b)
return gcd(a, b % a)
def lcm(a, b):
return a // gcd(a, b) * bProqramın əsas hissəsi. Giriş məlumatlarını oxuyuruq.
a, b = map(int, input().split())İki ədədin ƏOM-ni hesablayır və çap edirik.
print(lcm(a, b))Python həyata keçirilməsi — lcm
İki ədədin ən kiçik ortaq məxrəcini (ƏOM) hesablamaq üçün Python dilindəki lcm funksiyasından istifadə edəcəyik.
import mathGiriş məlumatlarını oxuyuruq.
a, b = map(int, input().split())İki ədədin ƏOM-ni hesablayır və çap edirik.
print(math.lcm(a, b))