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

如何计算输入的三个数中最大值与最小值的平均值?

解决思路与代码修改方案

核心问题分析

你现有代码中的largest和smallest函数仅负责打印结果,没有返回最大值、最小值的数值,导致无法直接调用这两个值计算平均值。解决的关键是让函数返回对应数值,再基于返回值完成平均值计算。


分步解决方法

  1. 修改函数,添加返回值
    在现有函数末尾添加return语句,将找到的最大值、最小值返回,而非仅打印:

    def largest(num1, num2, num3):
        if (num1 > num2) and (num1 > num3):
            largest_num = num1
        elif (num2 > num1) and (num2 > num3):
            largest_num = num2
        else:
            largest_num = num3
        print("The largest of the 3 numbers is : ", largest_num)
        return largest_num  # 返回最大值
    
    def smallest(num1, num2, num3):
        if (num1 < num2) and (num1 < num3):
            smallest_num = num1
        elif (num2 < num1) and (num2 < num3):
            smallest_num = num2
        else:
            smallest_num = num3
        print("The smallest of the 3 numbers is : ", smallest_num)
        return smallest_num  # 返回最小值
    
  2. 获取数值并计算平均值
    调用修改后的函数,接收返回的最大值、最小值,用(最大值 + 最小值) / 2计算平均值并打印:


完整代码示例

number1 = int(input('Enter First number : '))
number2 = int(input('Enter Second number : '))
number3 = int(input('Enter Third number : '))

def largest(num1, num2, num3):
    if (num1 > num2) and (num1 > num3):
        largest_num = num1
    elif (num2 > num1) and (num2 > num3):
        largest_num = num2
    else:
        largest_num = num3
    print("The largest of the 3 numbers is : ", largest_num)
    return largest_num

def smallest(num1, num2, num3):
    if (num1 < num2) and (num1 < num3):
        smallest_num = num1
    elif (num2 < num1) and (num2 < num3):
        smallest_num = num2
    else:
        smallest_num = num3
    print("The smallest of the 3 numbers is : ", smallest_num)
    return smallest_num

# 获取最大、最小值
max_num = largest(number1, number2, number3)
min_num = smallest(number1, number2, number3)

# 计算并打印平均值
average = (max_num + min_num) / 2
print(f"The average of largest and smallest numbers is : {average}")

简化方案(可选)

如果不需要自定义找最大最小值的逻辑,直接用Python内置的max()和min()函数可以大幅精简代码:

number1 = int(input('Enter First number : '))
number2 = int(input('Enter Second number : '))
number3 = int(input('Enter Third number : '))

max_num = max(number1, number2, number3)
min_num = min(number1, number2, number3)

print("The largest of the 3 numbers is : ", max_num)
print("The smallest of the 3 numbers is : ", min_num)

average = (max_num + min_num) / 2
print(f"The average of largest and smallest numbers is : {average}")

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.13 11:45:33