請(qǐng)問(wèn)我這里哪里錯(cuò)了,輸出為什么是189?
sum = 0
x = 1
n = 1
while True:
? ? sum=sum+x
? ? x=2^n
? ? n=n+1
? ? if n>20:
? ? ? ? break
print sum
sum = 0
x = 1
n = 1
while True:
? ? sum=sum+x
? ? x=2^n
? ? n=n+1
? ? if n>20:
? ? ? ? break
print sum
2019-10-21
舉報(bào)
2019-10-21
次方運(yùn)算符用**不是^
2019-10-23
錯(cuò)誤點(diǎn):1.次方符號(hào)錯(cuò)誤,應(yīng)該用**表示;2.按照你的理解是每一項(xiàng)的值是2的第n次方,所以n的值應(yīng)該從0開(kāi)始:即n=0,這樣才能保證x的第一項(xiàng)是從1開(kāi)始的,如果n=1,你這個(gè)第一項(xiàng)就是從2開(kāi)始的,即:2,4,8,16....
2019-10-21
x=2^n 改成 x=2**(n-1)就可以了
2019-10-21
你的sum只計(jì)算到sum+2^19而并非sum+2^20,所以可以把n=n+1放到break后面就可以計(jì)算到sum+2^20