You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

请求协助编写输入统计程序:处理数值输入并计算多项指标

Python 实现方案

以下是满足需求的Python代码,包含完整功能实现和边界处理:

# 初始化统计变量
count = 0
total = 0.0
min_val = float('inf')  # 初始化为无穷大,确保第一个输入能覆盖
max_val = float('-inf') # 初始化为负无穷,确保第一个输入能覆盖

while True:
    # 获取用户输入并转换为浮点数
    try:
        num = float(input("输入数值:"))
    except ValueError:
        print("请输入有效的数值!")
        continue
    
    # 输入为0时终止循环
    if num == 0:
        break
    
    # 将负数转换为正数
    processed_num = abs(num)
    
    # 更新统计数据
    count += 1
    total += processed_num
    
    # 更新最小值和最大值
    if processed_num < min_val:
        min_val = processed_num
    if processed_num > max_val:
        max_val = processed_num

# 避免用户直接输入0导致的除以0错误
if count == 0:
    print("未输入任何有效数值")
else:
    average = total / count
    # 按照要求格式输出结果
    print(f"总条目数:{count}")
    print(f"总和:{total}")
    print(f"平均值:{average}")
    print(f"最小值:{min_val}")
    print(f"最大值:{max_val}")

代码关键说明

  • 变量初始化:用float('inf')和float('-inf')作为最小/最大值的初始值,确保第一个有效输入能正确更新这两个值。
  • 输入处理:通过try-except捕获非数字输入的异常,提示用户重新输入,增强程序健壮性。
  • 负数转换:使用abs()函数直接将输入值转为绝对值,满足负数计入总和前转正数的要求。
  • 边界处理:判断count是否为0,避免用户直接输入0时出现除以0的错误。

测试示例

输入:

输入数值:22.5
输入数值:14.5
输入数值:7.2
输入数值:33.1
输入数值:0.0

输出:

总条目数:4
总和:77.3
平均值:19.325
最小值:7.2
最大值:33.1

内容的提问来源于stack exchange,提问作者Matheus Ravani

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.20 18:23:09