iT邦幫忙

2021 iThome 鐵人賽

DAY 18
0

今天要來給大家練習,今天要來練習的是比較實用的內容,主要是練習for迴圈和if。那我們就開始吧!

題目1

輸入兩個正整數,求兩數的最大公因數,並打印出來。
https://ithelp.ithome.com.tw/upload/images/20210918/20140468MBVDV0OQL4.png

a=int(input('輸入數字:'))
b=int(input('輸入數字:'))
max=1
for i in range(1,a*b):
    if a%i==0 and b%i==0:
        max=i
print(max)

首先當然就是輸入兩個數字,那首先我們先設一個最大公因數max等於1,再來就是for迴圈了。我for迴圈把範圍設成1到a乘以b,但是其實只要大於a和b就可以了,因為我們可以知道最大公因數不可能超過兩數。然後再來就是讓電腦去嘗試哪一個數字可以,那假如a和b都可以被i整除,if就會成立,那我們就把max的值帶成i。

題目2

輸入兩個正整數,求兩數的最小公倍數,並打印出來。
https://ithelp.ithome.com.tw/upload/images/20210918/20140468FnQpGEhqR1.png

a=int(input('輸入數字:'))
b=int(input('輸入數字:'))
max=1
for i in range(1,a*b+1):
    if i%a==0 and i%b==0:
        max=i
        break
print(max)

一開始一樣是先輸入兩個數字,那再來就把最小公倍數設為1,其實這邊設甚麼數字就比較沒關係了,因為之後會帶換掉。還有一個要注意的是那個max也是可以用其他數字代替的,那我方便大家看就不去更改。再來就是for迴圈,這次範圍就比較重要,後面那格必須要填ab加1,因為我們可以知道,最小公倍數是可以到ab的,要不然電腦有可能會找不到。那假如i可以被a和b整除,那就是找到答案了,找到答案之後就要把迴圈break掉,避免再次找到更大的公倍數。


上一篇
Python 函式
下一篇
Python 練習
系列文
一起來探索Python語言30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言