題是用while true 計算1,2,4,8,。。。。的前20個數的和,這樣寫的代碼為什么不正確
sum=0 x=1 n=1 while?true: ????sum=sum+x ????x=x+2*(n-1) ????n=n+1 ????if?n?>20 ???????break print?sum
sum=0 x=1 n=1 while?true: ????sum=sum+x ????x=x+2*(n-1) ????n=n+1 ????if?n?>20 ???????break print?sum
2018-11-19
舉報
2018-11-19
sum=0
x=1
n=1
while True:
? ? sum=sum+x
? ? x=x+2*(n-1)
? ? n=n+1
? ? if n>20:
? ? ? ?break
print (sum)
這樣可以了,你的代碼中有兩個問題,一是在if那一行里打的是中文的空格。二是由于python有多個多個版本,原來python從3.0后將print變為一個函數,所以需要加上括號,具體詳情可以百度搜索:Missing parentheses in call to 'print' ?
2018-11-23
x=2**(n-1)
2018-11-20
謝謝各位大神的解答
2018-11-19
while ture:的ture應該為Ture
if函數后要加冒號
正確為
sum=0
x=1
n=1
while Ture:
? ? sum=sum+x
????x=2*x
????n=n+1
????if n>20:
????????break
print sum