n=input('请输入插值次数:');
for i=1:n+1
fprintf('请输入第%d 个节点的坐标值:\n',i);
x(i)=input('横坐标值:');
y(i)=input('纵坐标值:');
end
px=input('请输入插值点的自变量值:');
omega=1;
for i=1:n+1
omega=omega*(px-x(i));
end
py=0;
for k=1:n+1
domega=1;
for i=1:n+1
if i ~=k
domega=domega*(x(k)-x(i));
end
end
py=py+omega*y(k)/((px-x(k))*domega);
end
fprintf('插值点的函数值为%f\n',py);
MATLAB拉格朗日插值公式代码
最新推荐文章于 2024-03-18 14:00:28 发布