利用Python求最大公約數和最小公倍數

2021-10-09 06:57:13 字數 814 閱讀 6680

我們利用乙個這個**感受一下python的簡潔和優雅。

# -*- coding: utf-8 -*-

# @time:2020/8/18 0:02

# @author:hanqi

# filename:最大公約數和最小公倍數.py

# software:pycharm

defhcf

(u, v)

:"""該函式返回兩個數的最大公約數"""

# 交換u,v,保證u>v

if v > u:

u, v = v, u

t = u % v

while

(t !=0)

: u, v, t = v, t, u % v

return v

deflcd

(u, v)

:"""該函式返回兩個數的最小公倍數"""

return u * v // hcf(u, v)

num1 =

int(

input

("請輸入第乙個數字:"))

num2 =

int(

input

("請輸入第二個數字:"))

print

("最大公約數"

, hcf(num1, num2)

)print

("最小公倍數"

, lcd(num1, num2)

)```python

執行結果

![在這裡插入描述](

結果完全正確

求最大公約數

最新用了三種演算法實現了求最大公約數的演算法,用的c 寫的,最大公約數也是我們生活中常見的問題 1 窮舉法 主要 如下 if a b for i 1 i a i 演算法分析 窮舉法先將a,b兩值比較大小並且互換,再進行與各種數的整除,如果這個數能同時被a,b整除,那麼這個數就為最大公約數,這種演算法...

求最大公約數

暴力列舉法很簡單,從較小整數的一班開始,試圖找到乙個合適的整數i,檢查這個整數i是否被a和b同時整除 暴力列舉法求最大公約數 param a param b return public static int getgreatestcommondivisor v1 int a,int b for in...

求最大公約數

1.輾轉相除法 a.具體思路 兩個正整數a和b a b 它們的最大公約數等於a除以b的餘數c和b之間的最大公約數。比如10和25,25除以10商2餘5,那麼10和25的最大公約數,等同於10和5的最大公約數。有點類似動態規劃的思想,逐步減小問題規模,最後求到問題的解。int test1 int a,...