1 / 5
文档名称:

用C语言实现的曲线拟合的最小二乘法.doc

格式:doc   大小:171KB   页数:5页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

用C语言实现的曲线拟合的最小二乘法.doc

上传人:435638 2019/3/23 文件大小:171 KB

下载得到文件列表

用C语言实现的曲线拟合的最小二乘法.doc

相关文档

文档介绍

文档介绍:实验名称:曲线拟合的最小二乘法实验目的了解曲线拟合的最小二乘法实验类型设计型实验环境WindowsXPTC实验内容相关知识:已知C[a,b]中函数f(x)的一组实验数据(xi,yi)(i=0,1,…,m),其中yi=f(xi)。设是C[a,b]上线性无关函数族。在中找函数f(x)曲线拟合的最小二乘解,其法方程(组)为:其中,k=0,1,…,n特别是,求函数f(x)曲线拟合的线性最小二乘解的计算公式为:数据结构:两个一维数组或一个二维数组算法设计:(略)实验用例:已知函数y=f(x)的一张表::利用曲线拟合的线性最小二乘法求被逼近函数f(x)在点x=55处的近似值,并画出实验数据和直线。编写代码:#include<>#include<>#include<>doubleqiuhe1(doublea[10][2],intp){ inti; doubley; y=0; for(i=0;i<10;i++) y=y+a[i][p]; returny;}doubleqiuhe2(doublea[10][2],intp){ inti; doubley=0; for(i=0;i<10;i++) y=y+a[i][0]*a[i][p]; returny;}doublenihe(doublea[10][2],doublex){ doublea1,b,y; a1=(10*qiuhe2(a,1)-qiuhe1(a,0)*qiuhe1(a,1))/(10*qiuhe2(a,0)-qiuhe1(a,0)*qiuhe1(a,0)); b=(qiuhe2(a,0)*qiuhe1(a,1)-qiuhe1(a,0)*qiuhe2(a,1))/(10*qiuhe2(a,0)-qiuhe1(a,0)*qiuhe1(a,0)); y=a1*x+b; returny;}intmain(){ doublea[10][2]={0,68,10,,20,,30,,40,,50,, 60,,70,,80,,90,60};doublex,x1,q=1; charc[12]; inti;longn;intarw[6]={515,235,520,240,515,245};intarw1[6]={315,45,320,40,325,45};intgdriver=IBM8514;intgmode=IBM8514HI;initgraph(&gdriver,&gmode,"c:\\TC20\\BGI"); cleardevice(); printf("inputx:\n"); scanf("%lf",&x); printf("%f\n",nihe(a,x)); n=nihe(a,x)*1000000+1; c[0]='y';c[1]='=';c[4]='.';for(i=10;i>1;i--){if(i!=4){c[i]=n%10+48;n=n/10;}}c[11]='\0'; x1=x; setbkcolor(7); setcolor(14); setlinestyle(0,0,3);