# Python TQC考題508 最大公因數
“””
維基百科:
計算時,先將48除以18得到商2、餘數12,然後再將18除以12得到商1、餘數6,再將12除以6得到商2、餘數0,即得到最大公因數6。我們只關心每次除法的餘數是否為0,為0即表示得到答案。
(48,18)=(x,y) #初始值x=48, y=18 != 0
48%18=12
18%12=6
12%6=0
最大公因數6
先下遞迴結束的條件
餘數y==0時,return x(除數)
“””
def compute(x,y):
if y==0:
return x
else:
return compute(y,x%y)
x=eval(input())
y=eval(input())
print(compute(x,y))

#遞迴太玄
x=eval(input()) #例如:12
y=eval(input()) #例如:8,最大公因數為4
if x>y:large=x
else: large=y
for i in range(large,0,-1):
if x%i==0 and y%i==0:
print(i)
break #求到最大公因數便跳出迴圈
#沒有break的話,
#會繼續算更小的公因數

#其實題目要輸入x,y
#不是分兩次輸入
# x,y=eval(input())

#練習用遞迴寫:

![Python爬蟲:BeautifulSoup的 .find_all() 與 .find() 與 .select(‘標籤名[屬性名1=”屬性值1″][屬性名2=”屬性值2″]’) ; from bs4 import BeautifulSoup ; Live Server(可以預覽HTML的VS Code套件) Python爬蟲:BeautifulSoup的 .find_all() 與 .find() 與 .select(‘標籤名[屬性名1=”屬性值1″][屬性名2=”屬性值2″]’) ; from bs4 import BeautifulSoup ; Live Server(可以預覽HTML的VS Code套件)](https://i0.wp.com/savingking.com.tw/wp-content/uploads/2025/03/20250330190318_0_925655.jpg?quality=90&zoom=2&ssl=1&resize=350%2C233)
![Python: 如何將folder_name, file_name合併為file_path? fpath = os.path .join(folder, fname) ; “\\”.join([folder, fname]) ; 如何將file_path拆分出folder? Python: 如何將folder_name, file_name合併為file_path? fpath = os.path .join(folder, fname) ; “\\”.join([folder, fname]) ; 如何將file_path拆分出folder?](https://i1.wp.com/savingking.com.tw/wp-content/uploads/2023/03/20230330132954_84.png?quality=90&zoom=2&ssl=1&resize=350%2C233)








近期留言