【问题标题】:Find Average with user input under condition until user press enter without value在条件下查找用户输入的平均值,直到用户按下没有值的输入
【发布时间】:2020-07-14 11:36:19
【问题描述】:

我收到了代码问题,以求用户输入的平均值。 这是说明

如果用户在没有输入任何内容的情况下按回车键,程序会停止并打印所有给定数字的平均值。平均值应保留 2 位小数。

为了解决这个问题,我采用了以下代码步骤:

count = 0
number = input("")
sum = 0

while True:
    number
    if number != "":
        sum = sum + int(number)
        count += 1
    else:
        break


print(f"Average is {sum/count}")

但是,当我什么都不输入时,它并没有跳出循环。请让我知道哪个部分使此代码成为无限循环。 谢谢。

【问题讨论】:

    标签: python algorithm while-loop average


    【解决方案1】:

    您应该在 while 循环中请求输入,否则,您只请求一次而不更新其值。您应该尝试以下方法:

    count = 0
    sum = 0
    
    while True:
        number = input("")
        if number != "":
            sum = sum + int(number)
            count += 1
        else:
            break
    
    
    print(f"Average is {sum/count}")
    

    以下是快速执行代码的示例:

    10 #Entered 10
    35 #Entered 35
    15 #Entered 15
       #Pressed Enter without typing anything
    Average is 20.0
    

    【讨论】:

    • 请注意当用户在第一次迭代中没有输入任何内容时,它会在您的代码中执行除以零。
    • 欣赏!我认为以全局方式分配输入函数将是一种更简洁的方式。很多人
    猜你喜欢
    • 1970-01-01
    • 2011-11-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多