課程
/后端開發
/Python
/初識Python
sum = 0x = 1while (x <= 100) and (x%2 == 1)? :??? sum = sum + x??? x = x + 1print sum
2018-07-19
源自:初識Python 5-5
正在回答
在while的第二次循環開始時,x已經值為2,所以條件判斷為false,即退出while循環,導致sum值只能為1
所以可以看出while循環的判斷條件有問題,應該使用if語句結構,將這條判斷語句x%2 == 1內置在循環體以內。
dong_brother 提問者
因為當第一次循環完后,第二次就進不了循環了,x的值就一直是2
while 語句里是判斷條件真假,之后執行命令。而且條件語句里一般不用A and B模式
第二次x的值為2,所以x%2==1這個條件不成立,所以會退出while循環,直接輸出sum=1;你可以把(x%2==1)
改成 if x%2==0:
? ? ? ? ?continue
把這條語句加到while循環里面去
x = 1 的時候,條件一成立,x%2 == 1,條件成立,運行代碼塊得到sum = 1,x =2。繼續循環,x=2,條件一為true,條件二x%2==1不成立為false,and是且,所以最后為false,循環結束。
舉報
學python入門視頻教程,讓你快速入門并能編寫簡單的Python程序
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網安備11010802030151號
購課補貼聯系客服咨詢優惠詳情
慕課網APP您的移動學習伙伴
掃描二維碼關注慕課網微信公眾號
2018-07-19
在while的第二次循環開始時,x已經值為2,所以條件判斷為false,即退出while循環,導致sum值只能為1
所以可以看出while循環的判斷條件有問題,應該使用if語句結構,將這條判斷語句x%2 == 1內置在循環體以內。
2018-07-19
因為當第一次循環完后,第二次就進不了循環了,x的值就一直是2
2018-07-19
while 語句里是判斷條件真假,之后執行命令。而且條件語句里一般不用A and B模式
2018-07-19
第二次x的值為2,所以x%2==1這個條件不成立,所以會退出while循環,直接輸出sum=1;你可以把(x%2==1)
改成 if x%2==0:
? ? ? ? ?continue
把這條語句加到while循環里面去
2018-07-19
x = 1 的時候,條件一成立,x%2 == 1,條件成立,運行代碼塊得到sum = 1,x =2。繼續循環,x=2,條件一為true,條件二x%2==1不成立為false,and是且,所以最后為false,循環結束。