亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

為啥 sum = sum + x放在后面,結果就不同了

x = 1
n = 1
while True:
??? if n > 20:
??????? break
??? x = x + x

??? n = n + 1

??? sum = sum + x

print sum

正在回答

4 回答

第一:sum沒有初始值應該要先賦值為0,sum=0

第二:如果sum=sum+x放后面,第一次循環的時候先計算的是x=x+x =2 ,這樣就少了第一個數x=1,這樣計算的就是2+4+8+16+。。。+的二十個數,

第三: 要是改成這樣的話,sum=sum+x放后面也是可以的

sum = 1

x = 1

n = 1

while True:

? ? if n > 19:

? ? ? ? break

? ? x= x*2

? ? n= n + 1

? ? sum = sum + x

print sum


2 回復 有任何疑惑可以回復我~
#1

不是夜晚 提問者

OK 謝啦。
2019-05-23 回復 有任何疑惑可以回復我~
#2

夏柘析

如果別人求第一項(n=1)的和 你這個求和不就錯了嗎
2019-07-01 回復 有任何疑惑可以回復我~

sum = 0

x = 1

n = 1

while True:

? ? if n > 20:

? ? ? ? break

? ? x = 2 ** (n - 1)

? ? sum += x

? ? n += 1

print sum


0 回復 有任何疑惑可以回復我~

這樣第一個x都加不進去,x=1是第一個數,sum要先加第一個數,你直接先x=x+x,sum直接加2

0 回復 有任何疑惑可以回復我~

不清楚你說的“放在后面”是指的放在哪行代碼的后面,如果是放到x = x + x,“前面”和“后面”進行對比,結果當然會不一樣了,放到“后面”會多執行一次sum =sum +x

2 回復 有任何疑惑可以回復我~
#1

不是夜晚 提問者

好的,明白了。
2019-05-23 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消
初識Python
  • 參與學習       758398    人
  • 解答問題       8967    個

學python入門視頻教程,讓你快速入門并能編寫簡單的Python程序

進入課程

為啥 sum = sum + x放在后面,結果就不同了

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號