资源描述:
《数值分析实验报告包括程序截图》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、计算机与信息工程学院数值分析实验报告计科专业2013级2班姓名:学号:注:实验平台为VS2013实验一:Lagrange插值法一、实验目的(1)通过实验掌握Lagrange插值法;(2)学会用编程语言求解具体插值问题。二、实验题冃:给出f(x)的函数表如下:X0.40.550.650.80.91.05f(x)0.410750.578150.696750.888111.026521.25382按Lagrange插值算法编程求出f(0.596)的近似值;三、实验原理若给定两个插值点(兀0,%),(兀1J),其中无0工
2、兀1,在公式中取力=1,则Lagrange插值多项式为:Pi(兀)=y0+)i产一=%+?1~>0(兀一兀0)(兀0—西)(旺一兀0)码一兀0是经过(兀0,刃)),(坷,)1)的—条直线,故此法称为线性插值法。若函数给定三个插值点(“必),心0,1,2,,其中兀互不和等,在公式中取応1,则Lagrange插值多项式为:(力=(兀_壬)(兀_兀2)
3、,(兀-兀0)(兀-花)
4、?(X_Xo)(X_X])2")(兀0—兀】)(兀0一兀2)"(兀[一兀0)(兀1一兀2)"(兀2—兀0)(兀2—西)这种插值法称为二次插值或
5、抛物插值。四、实验内容与步骤输入己矢口点个数n渝入己矢口点•的X坐标以反渝入己矢口点;的Y坐标车俞出结果二12345678910111213141516171819202122232425262728293031323334五、实验程序B#include#include〈string〉Eintmain(void)inti,j,t=0;doublela=1^lb=1,x=0.596,lk,In=0;doublea[6]={0.4,0.55,0.65,0.8,0.9,1.05}:1.25382}:d
6、oubleb[6]={0.41075,0.57815,0.69675,0.88811,1.02652,printf_s("Thex:%f*jx):for(i=0;i<6;++i)for(j=0;j<6;卄j)if(j==t)continue;la=la*(x-a[j]);lb=lb*(a[t]-a[j]);lk=la/lb:In=In+lk*b[i]:la=1;lb=1:printf_s(''result:%fIn):system(''pause"):return0:}六、实验结果及其分析Thex:0.5
7、96000result:0.631917请按任意键继续・・・教师评语:实验成绩:计算机与信息工程学院数值分析实验报告实验二:最小二乘法一、实验目的(1)掌握最小二乘法的基木思路和拟合步骤;(2)培养编程与上机调试能力。二、实验题目已知一组数据如下,求它的线性拟合曲线。1234544.5688.521311三、实验原理已知数据对(丹,力)仃=1,2,・・・,/?),求多项式p(x)=^aixi(m四、实验内容
8、与步骤已知一组数据如下,求它的线性拟合曲线。Xi12345X44.5688.5w.21311用线性函数p(x)=a+bx为例,拟合给定数据(忑,牙),心1,2,…,加o算法描述:步骤1:输入加值,及(兀=1,2,…,加。步骤2:建立法方程组=步骤3:解法方程组。步骤4:输出p(x)=a+hxo五、实验程序F#include#include-intmain(void)doublesuml=0$sum2=0,sum3inti:floatx[5]={1,2,3』4,5},二0,sum4
9、=0,sum5=0,aO,al:f[5]={4,4.5,6,8,8.5打讥5]={2,1,3,1,1};for(i=0;i<=4;++i)suml=suml+w[i]:}for(i=0;i<=4;++i)sum2=sum2+x[i]*w[i]:}for(i=0;i<=4:++i)sujtl3=sujti3+x[i]*x[i]*w[i];}for(i=0;i<=4;++i)sujti4=sum4+w[i]*f[il;}for(i=0;i<=4;++i)suin5=sum5+x[i]*w[i]*f[il;aO=(su
10、m4al=(suml*sum3-sujn5♦sum5一sum4*sum2)/(suml♦sum3-sum2♦sum2):♦sum2)/(suml*sum3一sum2*sum2);printf_s(*'%f%f%f%f%f3suml,sum2,sum3jsujn5):printf_s(*S(x)=%f+♦x*,aOjal):systemCpause"