题目描述
本题要求用户输入两个浮点数 f1
和 f2
,然后按照公式 (f1 * 3.5 + f2 * 7.5) / 11
计算加权平均值 Acwm
,最后将结果保留五位小数输出。
样例
输入:
5.0
7.0
输出:
MEDIA = 6.36364
算法1
(直接计算) O(1)
直接按照给定的公式 (f1 * 3.5 + f2 * 7.5) / 11
进行计算。首先读取用户输入的两个浮点数,然后将它们代入公式,最后将计算结果按照要求保留五位小数输出。
时间复杂度
由于只涉及固定次数的算术运算,所以时间复杂度为 O(1)。
参考文献
无
Python 代码
算法2
(函数封装) O(1)
将计算加权平均值的逻辑封装到一个函数中,这样可以提高代码的复用性。函数接收两个浮点数作为参数,返回计算得到的加权平均值。在主程序中,读取用户输入的两个浮点数,调用函数进行计算,最后将结果保留五位小数输出。
时间复杂度
同样,由于只涉及固定次数的算术运算,时间复杂度为 O(1)。
参考文献
无
Python 代码
def calculate_average(f1, f2):
return (f1 * 3.5 + f2 * 7.5) / 11
f1 = float(input())
f2 = float(input())
Acwm = calculate_average(f1, f2)
print(f"MEDIA = {Acwm:.5f}")