Lagrange插值

Lagrange插值

print("输入X:")
X = list(map(float, input().split(',')))
print("输入Y:")
Y = list(map(float, input().split(',')))

x = float(input())
result = 0.0
for i in range(len(X)):
    L = Y[i]
    for j in range(len(X)):
        if i != j:
            L *= ((x - X[j]) / (X[i] - X[j]))
    result += L
print(result)
输入X:
0.32,0.34,0.36
输入Y:
0.314567,0.333487,0.352274
0.3367
0.3303743620374999

心得:由于刚开始接触python,所有东西都不太熟悉,这算是我第一次利用python编程实现的功能。(这是老师布置的作业,用程序编写Lagrange插值法)

下午看了一点bp神经网络的东西,感觉Lagrange插值跟神经网络有点类似,就试着用python编写了一下。

一开始的思路是正确的,而且我是先列好提纲,才开始编程,前面的输出有点迷糊,不过查了点资料,一步一步还是实现了出来,后面循环语句有点绕,其实是输入格式不对,我一直以为是编程出了问题,改了好几遍程序,还是觉得逻辑并没有错,最后查出来是python的输入默认是字符串,改过格式后正确运行了出来。总的来说还是基础不牢。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小吕同学吖

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值