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

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

while循環中的初始化

while循環中的初始化

PHP
慕標琳琳 2023-11-09 10:57:54
我是 python 新手,無法理解下面的代碼片段。我不明白為什么 sum 被初始化為 0,而不是 1。任何人都可以解釋這個初始化嗎?n = 4sum = 0  # initialize sumi = 1  # initialize counterwhile i <= n:    sum = sum + i    i = i+1  # update counterprint("The sum is", sum)
查看完整描述

2 回答

?
倚天杖

TA貢獻1828條經驗 獲得超3個贊

這實際上更像是計算機編程的基礎知識而不是 Python 問題。我將嘗試在這里簡要解釋一下。


看起來您的目標是找到整數 1 到 n 的總和。如果用 1 初始化sum,那么得到的結果將始終比整數 1 到 n 的實際和多 1。您可以通過使用小值(例如n最多 5)進行運行并將獲得的輸出與實際總和進行比較來驗證這一點。為了方便起見,我在這里放一張桌子:


n | sum(1, n)

-------------

1 |         1

2 |         3

3 |         6

4 |        10

5 |        15

現在將其與使用 1 初始化時的輸出進行比較。sum出于好奇,您也可以嘗試使用其他值進行初始化。


查看完整回答
反對 回復 2023-11-09
?
侃侃爾雅

TA貢獻1801條經驗 獲得超16個贊

Sum 初始化為零,但由于 n 和 i 小于或等于,因此您總是運行至少一個循環,取 i = 1,則總和仍為 1,因為循環檢查 1 是否小于或等于 1 (i <= n)。因為它是然后它將 i 添加到總和(即 1)中,使總和為 1。然后它將 i 更新為 2 并轉到 while 循環的頂部。由于 2 <= 1 或 i <= n 在這里為 false,因此它會中斷并打印 1 作為總和



查看完整回答
反對 回復 2023-11-09
  • 2 回答
  • 0 關注
  • 247 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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