抛物插值问题

版权声明:请勿商业化使用 https://blog.csdn.net/qq_40991687/article/details/89525393

问题描述:
利用100,121,144求平方根115,使用抛物插值方法
问题分析:
抛物插值公式
具体操作看看看代码!!!

抛物插值问题

输入:

100 10 121 11 144 12
115

#include<cstdio>
#include<cmath>
void show(double a[]) {
 double m;
 scanf("%lf",&m);//待测值
 printf("抛物插值公式:y = (x-%.2lf)(x-%.2lf)/%.2lf*%.2lf + (x-%.2lf)(x-%.2lf)/%.2lf*%.2lf + (x-%.2lf)(x-%.2lf)/%.2lf*%.2lf\n",a[2],a[4],(a[0]-a[2])*(a[0]-a[4]),a[1],a[0],a[4],(a[2]-a[0])*(a[2]-a[4]),a[3],a[0],a[2],(a[4]-a[0])*(a[4]-a[2]),a[5]);//将数组a中数据代入抛物插值公式
 printf("结果:%.2lf\n",1.*(m-a[0])*(m-a[4])/((a[2]-a[0])*(a[2]-a[4]))*a[3]+(m-a[2])*(m-a[4])/((a[0]-a[2])*(a[0]-a[4]))*a[1]+(m-a[0])*(m-a[2])/((a[4]-a[0])*(a[4]-a[2]))*a[5]);
}
int main() {
 double a[6];
 for(int i=0; i<6; ++i)
  scanf("%lf",a+i);//分别输入X0,Y0,X1,Y1,X2,Y2
 show(a);
 return 0;
}

运算结果:

抛 物 插 值 公 式 : y = (x-121.00)(x-144.00)/924.00*10.00 + (x-100.00)(x-144.00)/-483.00*11.00 + (x-100.00)(x-121.00)/1012.00*12.00
结 果 : 10.72

猜你喜欢

转载自blog.csdn.net/qq_40991687/article/details/89525393
今日推荐