在 Python 中檢查數字奇數位和偶數位數字的乘積是否相等
假設我們有一個數字 n。我們必須檢查奇數位數字的乘積和偶數位數字的乘積是否相同。
因此,如果輸入類似於 n = 2364,則輸出將為 True,因為奇數位數字的乘積為 2 * 6 = 12,偶數位數字的乘積為 3 * 4 = 12,它們是相同的。
為了解決這個問題,我們將遵循以下步驟:
- 如果 num < 10,則
- 返回 False
- odd_place := 1,even_place := 1
- 當 num > 0 時,執行
- d := num 的最後一位數字
- odd_place := odd_place * d
- num := (num/10) 的商
- 如果 num 等於 0,則
- 中斷
- d := num 的最後一位數字
- even_place := even_place * d
- num := (num/10) 的商
- 如果 odd_place 等於 even_place,則
- 返回 True
- 返回 False
示例
讓我們看看以下實現以獲得更好的理解:
def solve(num): if num < 10: return False odd_place = 1 even_place = 1 while num > 0: d = num % 10 odd_place *= d num = num//10 if num == 0: break d = num % 10 even_place *= d num = num//10 if odd_place == even_place: return True return False num = 2364 print(solve(num))
輸入
2364
輸出
True
廣告