W tym programie nauczysz się znajdować LCM dwóch liczb i wyświetlać je.
Aby zrozumieć ten przykład, powinieneś znać następujące tematy programowania w Pythonie:
- Python while Loop
- Funkcje Pythona
- Argumenty funkcji Pythona
- Funkcje zdefiniowane przez użytkownika w Pythonie
Najmniejsza wspólna wielokrotność (LCM) dwóch liczb to najmniejsza dodatnia liczba całkowita, która jest doskonale podzielna przez dwie podane liczby.
Na przykład LCM 12 i 14 wynosi 84.
Program do obliczania LCM
# Python Program to find the L.C.M. of two input number def compute_lcm(x, y): # choose the greater number if x> y: greater = x else: greater = y while(True): if((greater % x == 0) and (greater % y == 0)): lcm = greater break greater += 1 return lcm num1 = 54 num2 = 24 print("The L.C.M. is", compute_lcm(num1, num2))
Wynik
LCM wynosi 216
Uwaga: Aby przetestować ten program, zmień wartości num1
i num2
.
Ten program przechowuje odpowiednio dwie liczby w num1
i num2
. Te liczby są przekazywane do compute_lcm()
funkcji. Funkcja zwraca LCM dwóch liczb.
W funkcji najpierw określamy większą z dwóch liczb, ponieważ LCM może być tylko większa lub równa największej liczbie. Następnie używamy nieskończonej while
pętli, aby przejść od tej liczby i dalej.
W każdej iteracji sprawdzamy, czy obie liczby doskonale dzielą naszą liczbę. Jeśli tak, przechowujemy numer jako LCM i przerywamy pętlę. W przeciwnym razie liczba jest zwiększana o 1 i pętla jest kontynuowana.
Powyższy program działa wolniej. Możemy uczynić to bardziej wydajnym, wykorzystując fakt, że iloczyn dwóch liczb jest równy iloczynowi najmniejszej wspólnej wielokrotności i największego wspólnego dzielnika tych dwóch liczb.
Liczba1 * Liczba2 = LCM * GCD
Oto program w Pythonie, który to zaimplementuje.
Program do obliczania LCM przy użyciu GCD
# Python program to find the L.C.M. of two input number # This function computes GCD def compute_gcd(x, y): while(y): x, y = y, x % y return x # This function computes LCM def compute_lcm(x, y): lcm = (x*y)//compute_gcd(x,y) return lcm num1 = 54 num2 = 24 print("The L.C.M. is", compute_lcm(num1, num2))
Wynik tego programu jest taki sam jak poprzednio. Mamy dwie funkcje compute_gcd()
i compute_lcm()
. Wymagamy GCD numerów, aby obliczyć jego LCM
Więc compute_lcm()
wywołuje funkcję, compute_gcd()
aby to osiągnąć. GCD dwóch liczb można skutecznie obliczyć za pomocą algorytmu Euklidesa.
Kliknij tutaj, aby dowiedzieć się więcej o metodach obliczania GCD w Pythonie.