Python program az LCM megtalálásához

Ebben a programban megtanulja megkeresni két szám LCM-jét és megjeleníteni.

A példa megértéséhez ismernie kell a következő Python programozási témákat:

  • Python, míg a hurok
  • Python függvények
  • Python Function Arguments
  • Python Felhasználó által definiált függvények

Két szám legkevesebb közös többszöröse (LCM) a legkisebb pozitív egész szám, amely tökéletesen osztható a két megadott számmal.

Például a 12 és 14 LCM értéke 84.

Program az LCM kiszámításához

 # 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))

Kimenet

 Az LCM 216 

Megjegyzés: A teszt ezt a programot, módosítsa az értékeket a num1és num2.

Ez a program két számot tárol num1, num2illetve. Ezeket a számokat átadjuk a compute_lcm()függvénynek. A függvény két szám LCM-jét adja vissza.

A függvényben először a két szám közül a nagyobbat határozzuk meg, mivel az LCM csak nagyobb vagy egyenlő lehet a legnagyobb számmal. Ezután egy végtelen whilehurkot használunk arra a számra és azon túl.

Minden iterációban ellenőrizzük, hogy mindkét szám tökéletesen elosztja-e a számunkat. Ha igen, akkor a számot LCM-ként tároljuk, és elszakadunk a huroktól. Ellenkező esetben a szám 1-gyel növekszik, és a hurok folytatódik.

A fenti program lassabban fut. Hatékonyabbá tehetjük azzal, ha felhasználjuk azt a tényt, hogy két szám szorzata megegyezik e két szám legkevésbé közös többszörösének és legnagyobb közös osztójának szorzatával.

 Szám1 * Szám2 = LCM * GCD 

Itt van egy Python program ennek megvalósítására.

Program az LCM kiszámításához a GCD használatával

 # 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)) 

Ennek a programnak a kimenete ugyanaz, mint korábban. Két funkciónk van compute_gcd()és compute_lcm(). Az LCM kiszámításához a számok GCD-jére van szükség

Tehát, compute_lcm()meghívja a függvényt compute_gcd()ennek megvalósítására. Két szám GCD-je hatékonyan kiszámítható az euklideszi algoritmus segítségével.

Kattintson ide, ha többet szeretne megtudni a GCD Python-ban történő kiszámításának módszereiről.

érdekes cikkek...