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

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

如果sum=sum+x的位置提前,為什么結果為5151

x=0
sum=0
while?True:
????x=x+1
????sum=sum+x
????if?x>100:
????????break
????if?x%2==0:
????????continue
print?sum

就是把sum=sum+x提前為什么輸出結果為5151?


正在回答

5 回答

你這個不是計算所有質數,你的程序師計算100以內所有數的和,朋友

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

Randoolx 提問者

但是100內的和是5050,為什么會出現5151?
2016-06-17 回復 有任何疑惑可以回復我~

又看了一遍,知道是怎么回事了。continue命令跳過的是它后面的代碼,繼續下一個循環。在題主寫的代碼中,sum=sum+x提前,而continue命令在最后。假如x=2,它不符合continue的條件,那么會跳過continue后面的代碼,繼續下一個循環,即計算x=3時的x=x+1,sum=sum+x...。問題是而continue后面沒有代碼,則這個條件對于篩選偶數并沒有用,故而計算的是0-100所有數的和。

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

同問,不明白

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

sum提前表示前1-100的總和,具體: x=0,sum=1 ? x=1,sum=1+2=3 ? x=2,sum=3+3=6.....?

其中的x是 x=x+1等號后面的 x

如果sum在后面時,sum=sum+x ? ?sum是0 ? ?x=100時,sum=0+100+1

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

Randoolx 提問者

非常感謝!
2016-06-17 回復 有任何疑惑可以回復我~
#2

愛吃小魚干3457117

看的不是很懂,放在前面加就提前表示總和,那么循環運算起來是x = 1 sum = 0 + 1, x = 2 sum = 1 + 2, x = 3 sum = 3+3。。。。。 放在后面就是sum = 0 + 100 (這個100是x循環的來的對嗎?)+1 (這個是哪來的呢) 還有在這一步驟的循環是怎么回事呢,看不懂,,,,
2016-07-07 回復 有任何疑惑可以回復我~

你這個continue寫的不對吧

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

舉報

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

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

進入課程

如果sum=sum+x的位置提前,為什么結果為5151

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

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

幫助反饋 APP下載

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

公眾號

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