当前位置:文档之家› 数值计算数值分析实验分段三次埃尔米特hermite插值c程序实现流程图

数值计算数值分析实验分段三次埃尔米特hermite插值c程序实现流程图

数值计算数值分析实验分段三次埃尔米特hermite插值c程序实现流程图
数值计算数值分析实验分段三次埃尔米特hermite插值c程序实现流程图

实验四分段三次埃尔米特插值

(一)实验目的

掌握分段三次埃尔米特插值算法。

(二)实验项目内容

1.写出计算步骤和流程图。

2.对每种算法分别用C或c#程序实现。

3.调试程序。可用以下数据进行调试。

已知函数y=1/(1+x2)在区间[0,3]上取等距插值节点,求区间[0,3]上的分段三次埃尔米特插值函数,并利用它求出f(1.5)的近似值(0.3075)。

(三)主要仪器设备

微机

(四)实验室名称

公共计算机实验室

(五)实验报告撰写

实验四分段三次埃尔米特插值

实验报告

一、流程图

二、程序代码

#include #include

float f0(float x)

{

return((x-1)*(x-1)*(2*x+1));

}

float f1(float x)

{

return(x*x*(-2*x+3));

}

float g0(float x)

{

return(x*(x-1)*(x-1));

}

float g1(float x)

{

return(x*x*(x-1));

}

void main()

{float x0,x1,x,y0,y1,yy0,yy1,h,p;

printf("输入x0,x1,x,y0,y1和yy0,yy1的取值");

scanf("%f%f%f%f%f%f%f",&x0,&x1,&x,&y0,&y1,&yy0,&yy1);

h=x1-x0;

p=y0*f0((x-x0)/h)+y1*f1((x-x0)/h)+h*yy0*g0((x-x0)/h)+h*yy1*g1((

x-

x0)/h);

printf("%f\n",p);

}

三、运行结果【截图】

相关主题
文本预览
相关文档 最新文档