首页 > 解决方案 > 如何显示来自用户的总正整数的总和并在输入负整数后停止?

问题描述

所以我的代码一直显示数字的总和 10 次而不是一次。我试图让用户输入尽可能多的输入,但是一旦输入负整数,我需要它停止。一旦发生这种情况,它应该停止让用户添加数字并仅显示正数的总和。请告诉我我在这里做错了什么。我对编程很陌生,我被困住了。

max = 10
total = 0.0
positive_num = 0

for counter in range (max):
    while positive_num > -1: 
        total = total + positive_num
        positive_num = int(input('Enter a positive number: '))
    else:
        print('Total of positive numbers is:', total)

标签: python

解决方案


您的循环没有让用户输入他们想要的数量,它只输入最多 10 个数字,您应该将其更改为无限循环,并在负输入时中断:

total = 0.0

while True:
    positive_num = int(input('Enter a positive number: '))
    if positive_num > -1:
        total = total + positive_num
    else:
        print('Total of positive numbers is:', total)
        break

推荐阅读