Python 基礎(chǔ)教程

Python 流程控制

Python 函數(shù)

Python 數(shù)據(jù)類型

Python 文件操作

Python 對(duì)象和類

Python 日期和時(shí)間

Python 高級(jí)知識(shí)

Python 參考手冊(cè)

Python 程序查找LCM

Python 實(shí)例大全

在此程序中,您將學(xué)習(xí)找到兩個(gè)數(shù)字的LCM并顯示它。

要理解此示例,您應(yīng)該了解以下Python編程主題:

兩個(gè)數(shù)字的最小公倍數(shù)(LCM)是可被兩個(gè)給定數(shù)字完全整除的最小正整數(shù)。

例如,LCM為12和14為84。

計(jì)算LCM的程序

# 用Python程序求兩個(gè)輸入數(shù)字的L.C.M.

def compute_lcm(x, y):

   # 選擇較大的數(shù)字
   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("L.C.M.是", compute_lcm(num1, num2))

輸出結(jié)果

L.C.M.是 216

注:為了測(cè)試這個(gè)程序,可以修改num1和num2的值。

該程序分別在num1和num2中存儲(chǔ)兩個(gè)數(shù)字。這些數(shù)字將傳遞給compute_lcm()函數(shù)。該函數(shù)返回兩個(gè)數(shù)字的LCM。

在函數(shù)中,我們首先確定兩個(gè)數(shù)字中的較大者,因?yàn)長(zhǎng).C.M. 只能大于或等于最大數(shù)。 然后,我們使用無(wú)限的while循環(huán)從該數(shù)字開(kāi)始。

在每次迭代中,我們檢查兩個(gè)數(shù)字是否完美地除以我們的數(shù)字。如果是這樣,我們將數(shù)字存儲(chǔ)為L(zhǎng)CM并退出循環(huán)。否則,數(shù)字將增加1,然后循環(huán)繼續(xù)。

上面的程序運(yùn)行較慢。我們可以利用兩個(gè)數(shù)的乘積等于這兩個(gè)數(shù)的最小公倍數(shù)和最大公除數(shù)的乘積來(lái)提高效率。

Number1 * Number2 = L.C.M. * G.C.D.

這是一個(gè)實(shí)現(xiàn)此目的的Python程序。

使用GCD計(jì)算LCM的程序

# 用Python程序求兩個(gè)輸入數(shù)字的L.C.M.

# This function computes GCD 
def compute_gcd(x, y):

   while(y):
       x, y = y, x % y
   return x

# 這個(gè)函數(shù)計(jì)算LCM
def compute_lcm(x, y):
   lcm = (x*y)//compute_gcd(x,y)
   return lcm

num1 = 54
num2 = 24 

print("L.C.M.是", compute_lcm(num1, num2))

該程序的輸出與以前相同。 我們有兩個(gè)函數(shù)compute_gcd()和compute_lcm()。 我們需要G.C.D. 的數(shù)字以計(jì)算其L.C.M.

因此,compute_lcm()調(diào)用函數(shù)compute_gcd()來(lái)完成此操作。  G.C.D. 使用歐幾里得算法可以有效地計(jì)算出兩個(gè)數(shù)之和。

單擊此處以了解有關(guān)在Python中計(jì)算GCD的方法的更多信息。

Python 實(shí)例大全

丰满人妻一级特黄a大片,午夜无码免费福利一级,欧美亚洲精品在线,国产婷婷成人久久Av免费高清