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

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

請問這個代碼怎么算不出來

sum = 0

x = 1 ?

while True:

? ? if x > 100:

? ? ? ? break

? ? if x % 2 == 0:

? ? ? ? continue

? ? sum = sum + x

? ? x = x + 1

print sum

請問這個代碼怎么算不出來

正在回答

4 回答


?if x % 2 == 0:

? ? ? ? continue

當X == 2 的時候就陷入死循環了,continue意思是跳過下面內容重新返回循環,X的值始終沒有變,當然也就算不出來了。

解決方案是:把x= x+1 放到break和if 之間,

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

慕仰3175336 提問者

非常感謝!
2016-05-08 回復 有任何疑惑可以回復我~

其實呢, 這個代碼在 執行過第一遍后, x自加了1 成為了?

x?=2

這時候再進入循環體:

while?True:
????if?x?>?100:
????????break
????if?x?%?2?==?0:??##?由于?x?=?2,?就會進入if,?遇到continue,?continue?的已是跳過本次循環的以下部分
????????continue????##?接著x再次進入循環,?由于跳過了continue?以下部分,所以x?依然是2.?然后
????sum?=?sum?+?x???##?如此反復,?循環?成了死循環。
????x?=?x?+?1


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

改成這樣就好,不然x=2,直接continu,然后換是2執行if然后換是2執行···

?if x % 2 == 0:

? ? ? ? sum = sum + x

? ? ? ? x = x + 1

? ? ? ? continue

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

因為 if x%2==0 ?這一句之后跳出循環,就沒法對x進行自加了,所以之后的代碼無法運行,所以出不來結果,需要顛倒一下順序。

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

舉報

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

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

進入課程

請問這個代碼怎么算不出來

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

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

幫助反饋 APP下載

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

公眾號

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