在 Python 中檢查除數個數是偶數還是奇數


假設我們有一個數字 n,我們需要找到它的總除數個數是偶數還是奇數。

因此,如果輸入像 n = 75,則輸出將為偶數,因為除數為 [1, 3, 5, 15, 25, 75]。

為了解決這個問題,我們將遵循一種簡單有效的方法。我們觀察到,當一個數字是完全平方數時,它才具有奇數個除數。所以如果數字不是完全平方數,那麼它將具有偶數個除數。因此,這裡我們只需要檢查數字是否為完全平方數,並根據此返回“奇數”或“偶數”作為輸出。

為了解決這個問題,我們將遵循以下步驟:

  • 如果 n < 1 且不為零,則
    • 返回
  • sqrt := n 的平方根
  • 如果 sqrt*sqrt 與 n 相同,則
    • 返回 '奇數'
  • 否則,
    • 返回 '偶數'

讓我們看看下面的實現,以便更好地理解:

示例

 線上演示

def solve(n):
   if n < 1:
      return
   sqrt = n**0.5
   if sqrt*sqrt == n:
      return 'Odd'
   else:
      return 'Even'
n = 75
print(solve(n))

輸入

75

輸出

Even

更新於: 2020-12-30

678 次瀏覽

開啟你的 職業生涯

透過完成課程獲得認證

開始學習
廣告

© . All rights reserved.