Python编程:使用匿名函数求解数学表达式
Python编程:使用匿名函数求解数学表达式
本关任务:编写程序,求y的值,要求结果保留5位小数,其中y=e^2 + ∑(r=1 to n) 2π/(1+ln(r))。
从键盘输入n的值,求循环累加n次的和
任务分析
定义一个匿名函数求累加项,循环控制累加n次。
知识要求
为了完成本关任务,你需要掌握:
- 匿名函数的定义
- 匿名函数的调用
编程要求
根据提示,在右侧编辑器补充代码,计算并输出数组的平均值和最大值。
测试说明
平台会对你编写的代码进行测试:
测试输入1:Please Input n:100 预期输出1:y=81.19547
测试输入2:Please Input n:50 预期输出2:y=38.97777
from math import *
########## Begin ##########
f=lambda r: 2*pi/(1+log(r)) #请补充完整lambda函数
########## End ##########
n=int(input("Please Input n:"))
y=exp(2.0)
for n in range(1,n+1):
y+=f(n)
print('y=%.5f'%y)
代码解析
from math import *:导入数学库,使用其中的数学函数,例如exp()、log()和pi。f=lambda r: 2*pi/(1+log(r)):定义一个匿名函数f,它接受一个参数r,并返回 2π/(1+ln(r)) 的值。n=int(input("Please Input n:")):从键盘输入整数 n,表示循环的次数。y=exp(2.0):计算 e^2 的值并赋值给y。for n in range(1,n+1)::使用循环遍历从 1 到 n 的所有整数。y+=f(n):在每次循环中,调用匿名函数f计算当前循环的累加项,并将其加到y上。print('y=%.5f'%y):输出y的值,并保留 5 位小数。
代码运行示例
Please Input n:100
y=81.19547
通过这个示例,你可以理解如何使用匿名函数和循环来求解数学表达式。尝试修改代码,并用不同的输入进行测试,加深你对匿名函数和循环的理解。
原文地址: https://www.cveoy.top/t/topic/njZD 著作权归作者所有。请勿转载和采集!