In dit programma leer je de LCM van twee getallen te vinden en weer te geven.
Om dit voorbeeld te begrijpen, moet u kennis hebben van de volgende programmeeronderwerpen in Python:
- Python while Loop
- Python-functies
- Python-functieargumenten
- Python door de gebruiker gedefinieerde functies
Het kleinste gemene veelvoud (LCM) van twee getallen is het kleinste positieve gehele getal dat perfect deelbaar is door de twee gegeven getallen.
De LCM van 12 en 14 is bijvoorbeeld 84.
Programma om LCM te berekenen
# 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))
Uitvoer
De LCM is 216
Opmerking: Om dit programma te testen, wijzigt u de waarden van num1
en num2
.
Dit programma slaat twee cijfers in num1
en num2
resp. Deze nummers worden doorgegeven aan de compute_lcm()
functie. De functie retourneert de LCM van twee getallen.
In de functie bepalen we eerst de grootste van de twee getallen, aangezien de LCM alleen groter of gelijk kan zijn aan het grootste getal. We gebruiken dan een oneindige while
lus om van dat nummer en verder te gaan.
Bij elke iteratie controleren we of beide nummers ons nummer perfect verdelen. Als dat het geval is, slaan we het nummer op als LCM en breken we uit de lus. Anders wordt het nummer met 1 verhoogd en gaat de lus verder.
Het bovenstaande programma wordt langzamer uitgevoerd. We kunnen het efficiënter maken door het feit te gebruiken dat het product van twee getallen gelijk is aan het product van het kleinste gemene veelvoud en de grootste gemene deler van die twee getallen.
Getal1 * Getal2 = LCM * GCD
Hier is een Python-programma om dit te implementeren.
Programma om LCM te berekenen met behulp van 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))
De output van dit programma is hetzelfde als voorheen. We hebben twee functies compute_gcd()
en compute_lcm()
. We hebben GCD van de cijfers nodig om de LCM te berekenen
Dus compute_lcm()
roept de functie compute_gcd()
aan om dit te bereiken. GCD van twee getallen kan efficiënt worden berekend met behulp van het Euclidische algoritme.
Klik hier voor meer informatie over methoden om GCD in Python te berekenen.