農會 資訊管理類程式設計110 年第 12 題單選題
以下為Python程式片段,請問執行後的結果,下列何者正確?
a=17/5
b=17//5
c=17%5
Aa=3.4正確答案
Bb=3正確答案
Cc=1
Dc=3
A、B正確答案
Python 3 中 `/` 為浮點數除法,`//` 為整數除法,`%` 為取餘數,需熟記三者差異與運算結果。
為什麼答案是 A、B
`/` 為真除法,17除以5結果為浮點數 3.4,選項敘述正確。
考點:真除法 /考點:地板除法 //考點:取餘數 %
載入中…
完整詳解
Pro · 無限重點 Python 3 中 `/` 為浮點數除法,`//` 為整數除法,`%` 為取餘數,需熟記三者差異與運算結果。
看到 `/` 想到小數(3.4),`//` 想到無條件捨去(3),`%` 想餘數(2),對照選項即可作答。
逐選項分析
A真除法 /✓ 正確
`/` 為真除法,17除以5結果為浮點數 3.4,選項敘述正確。
B地板除法 //✓ 正確
`//` 為地板除法(整數除法),17除以5無條件捨去小數,結果為 3,選項敘述正確。
C取餘數 %✕ 陷阱
`%` 為取餘數運算,17除以5的餘數應為 2,而非 1,選項敘述錯誤。
D取餘數 %✕ 陷阱
承上,17除以5的餘數為 2,選項故意將『商數3』作為誘餌,敘述錯誤。
Python 除法與餘數運運算元比較
| 運運算元 | 名稱 | 說明 | 17 與 5 運算結果 |
|---|
| / | 真除法 | 一般除法,結果必定為浮點數 (float) | 3.4 |
| // | 地板除法 | 整數除法,無條件捨去小數部分 (向下取整) | 3 |
| % | 取餘數 | 計算除法後的餘數 | 2 |
考生常將 `/` 與 `//` 搞混,或在計算 `%` 時將『商』與『餘數』弄錯。17除以5商為3、餘數為2,切勿將商數3誤認為餘數而誤選D選項。