【问题标题】:checking odd & even number for exponentiation检查求幂的奇偶数
【发布时间】:2016-07-25 10:50:51
【问题描述】:

我在这里遗漏了一些东西。
下面的函数运行完美。它检查“b”的值是奇数还是偶数
表达式 (b%2)*2 == b,然后将 "a" 提升为 "b" 的幂。
我在“b”的多个值上检查了这个表达式。
它是 0 或 1,分别取决于偶数或奇数。
我找不到 (b%2)*2 == b 为真的数字。
但是代码仍然可以完美运行。
谁能解开我的困惑?

def expo(a,b): # a to the power b
if b == 1:
    return a
if (b%2)*2 == b:#checking even or odd
    return expo(a*a, b/2)
else: return a*expo(a,b-1)
x=expo(8,2)
print x
x=expo(8,3)    
print x

谢谢 pkj

【问题讨论】:

    标签: modulus


    【解决方案1】:

    真的很抱歉没有人回答。我不知道我是怎么来到这里的,但你的偶数检查器完全错了。

    你想做的是:

    b % 2 == 0
    

    如果这是真的,那就是偶数。如果为假,那就奇怪了。

    【讨论】:

      猜你喜欢
      • 2016-04-21
      • 1970-01-01
      • 2021-12-24
      • 2015-05-31
      • 2013-06-09
      • 2011-11-12
      • 2019-12-24
      • 2016-09-16
      • 1970-01-01
      相关资源
      最近更新 更多