武汉理工大学 学 生 实 验 报 告 书 实验课程名称 数值分析 开 课 学 院 计算机科学与技术学院 指导老师姓名 学 生 姓 名 学生专业班级 2 0 1 0 —2 0 1 0 学年 第一学期 学生学号 实验课成绩 实验课程名称: 数值分析 实验项目名称 实验成绩 实验者 专业班级 组别 同组者 实验日期 年 月 日 第一部分:实验分析与设计(可加页) 一、 实验内容描述(问题域描述) 1、 分别画出 Lagrange插值公式、Newton插值公式、分段插值公式和 Hermite插值公式的算法流程图 2、 分别用 Lagrange插值公式和 Newton插值公式通过编程计算函数 f(x)的近似值 已知对于 f(x)=ex,有数据表如下: xi 0 0.5 1.0 2.0 f(xi) 1.00000 1.64872 2.71828 7.38906 (1) 对 x0=0,x1=0.5利用线性插值计算 f(0.25)的近似值;对 x0=0.5,x1=1利用线性插值计算 f(0.75)的近似值; (2) 对 x0=0,x1=0.5,x2=2利用二次插值计算 f(0.25)和 f(0.75)的近似值 (3) 对 x0=0,x1=0.5,x2=2求 f(x)的 Hermite插值多项式 H5(x); (4) 分析和比较各插值算法的精度差异 3、 通过编程计算函数 f(x)的近似值。已知对于 f(x)=,有数据表如下: xi 2.0 2.1 2.2 2.3 2.4 f(xi) 1.414214 1.449138 1.483340 1.516575 1.549193 (1)计算各阶插值多项式在不同点的值:f(2.05),f(2.15),f(2.45); (2)利用分段线性插直和分段抛物插值计算(1)中的函数值; (3)分析和比较算法的效率差异和精度差异(同时注意插值点的位置与精度之间的关系)。 4、用不同方式方法编程给出计算 Langrange插值和 Newton插值的算法,分析和比较两种算法的编程难易以及算法的效率差异总计算量之间的关系。 5、写出实习报告 二、 实验基本原理与设计(包括实验方案设计,实验手段的确定,试验步骤等,用硬件逻辑或者算法描述) 【拉格朗日插值法算法流程图】 【牛顿插值法算法流程图】 【分段插值法算法流程图】 【艾尔米特插值法算法流程图】 【拉格朗日插值法源程序】 #include using namespace std; int main() { cout<<"请输入坐标点个数:"<>count; double point[100][2]; int count1=0; cout<<"请输入坐标:"<>point[count1][0]>>point[count1][1]; count1++; } cout<<"计算 f(x)请输入 x:"<