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

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

5-5 Python之 while循環

任務是利用while循環計算100以內奇數之和。
各位前輩請指教我寫的答案和標準答案有何不同,感謝!
標準答案:
sum=0
x=1
while x<100:
sum=sum+x
x=x+2
print sum

我的答案:
sum=0
x=1
while x<100:
x=x+2
sum=(1+100)*100/2
print sum

不明白的點:
1.既然是奇數之和,不應該用等差數列求和公式嗎? 為什么答案寫的是sum=sum+x
2.要求奇數,當x=1, 則x=x+1 is Ture,
當x=2,則x=x+2 依然是偶數,如何讓程序判定新x一直都是奇數呢?
感謝!??!

正在回答

3 回答

1、如果使用等差數列求和就不需要使用循環了,直接一個數學公式就可以求了,答案中的sum,是循環到本次前全部的和,第一次循環sum = sum+x就是sum = 0+1 ,x=x+2 就是 x=1+2,然后第一次循環完了就會執行第二次,知道當x<100不成立。

2、判斷是否為奇數可以使用除以2求余等于1還是0來判斷,但這里不需要,這里只用你最開始設置x=1 每次循環讓x=x+2便可以控制它每次都是奇數。

循環相當于就是直接計算1+3+5+這樣一直加到最后一個,而不是運用了求和公式。

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

1:可以使用等差數列求和公式,人在計算時更傾向于使用求和公式,但是計算機是運行速度很快的機器,更擅長于做機械性的重復性的工作。sum=sum+x就是硬算,一個一個的去加起來。

2:程序中,x=1,x=x+2,保證了x都是奇數。

另外可以用if判斷語句

if not x%2:

? ? sum = sum + x

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

等差數列你不應該只有五十項嗎

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

舉報

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

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

進入課程

5-5 Python之 while循環

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

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

幫助反饋 APP下載

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

公眾號

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