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

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

僅對正數求和的 Python 程序

僅對正數求和的 Python 程序

烙印99 2021-06-29 13:54:46
我正在嘗試編寫一個只對輸入的正數求和的程序。當用戶輸入負數時,程序停止但不會將該負數添加到總和中。如何讓程序不將負數添加到總和中?這是我所擁有的。  # set parameters for user  print('Enter a positive number then hit enter, When you want to end the   process enter a negative number')  entered_number = 0  value = 0  # user enters numbers  while entered_number >= 0:      entered_number = int(input('Enter a number: '))      value += entered_number  # prints sum of numbers entered  print('The total sum of the numbers you entered is', value)如果我輸入 2 , 2 , -1 是 3,那么我上面代碼的總和就是 3。如果我輸入 2, 2, -1,我希望程序的總和是 4。
查看完整描述

1 回答

?
慕婉清6462132

TA貢獻1804條經驗 獲得超2個贊

循環會將負數添加到變量中,value因為在實際添加輸入的(負)數之前您不會終止循環。


while entered_number >= 0:

    entered_number = int(input('Enter a positive number: '))

    value += entered_number # If entered_number is negative it will still

                            # be added, because the loop will terminate 

                            # after this iteration

有兩種解決方案:


value += entered_number在輸入新號碼的位置之前移動到

這樣循環將在將其添加到總和之前評估輸入的數字


while entered_number >= 0:

    value += entered_number

    entered_number = int(input('Enter a positive number: '))

永遠循環并在循環內中斷

邏輯與 1 中的相同,只是我們檢查的方式不同。


while True:

    entered_number = int(input('Enter a positive number: '))

    if entered_number < 0:

        break

    value += entered_number # This line will only be reached if we

                            #  haven't breaked out from the loop


查看完整回答
反對 回復 2021-07-06
  • 1 回答
  • 0 關注
  • 190 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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