2016-07-25 90 views
0

我錯過了這裏的東西。
下面函數運行 「b」 的flawlessly.It檢查值用於奇數或偶數由
表達(B%2)* 2 == b,然後升高 「一」 上電 「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

回答

0

實在不好意思沒人接。我不知道我是如何在這裏結束的,但是你的偶數檢查器顯然是錯誤的。

你想要做的是:

b % 2 == 0 

如果這是真的,它甚至。如果是假的,那很奇怪。