检查除数在 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

猜你喜欢