网站大量收购独家精品文档,联系QQ:2885784924

数值分析实验答案.doc

  1. 1、本文档共9页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
实验0 截断误差与舍入误差 #include stdio.h #include math.h const double ln2=0.693147190546; const double e1=5e-6; void main() { int sign; double s; long i; s=0.0; sign=1; i=1; while(fabs(ln2-s)=e1) {s+=(1.0/i)*sign; sign=-sign; i++; } printf(n=%ld\n,i-1); getch(); } 实验1 拉格朗日插值法 编写拉格朗日插值法通用子程序,并用以下函数表来上机求,。 x 0.0 0.1 0.195 0.3 0.401 0.5 f (x) 0.39894 0.39695 0.39142 0.38138 0.36812 0.35206 #include stdio.h main() { static float Lx[10],Ly[10]; int n,i,j; float x,y,p; printf(enter n=); scanf(%d,n); printf(enter xi\n); for(i=0;in;i++) scanf(%f,Lx[i]); printf(enter yi\n); for(i=0;in;i++) scanf(%f,Ly[i]); printf(enter x=); scanf(%f,x); /* n=6; Lx[0]=0; Lx[1]=0.1; Lx[2]=0.195; Lx[3]=0.3; Lx[4]=0.401; Lx[5]=0.5; Ly[0]=0.39894; Ly[1]=0.39695; Ly[2]=0.39142; Ly[3]=0.38138; Ly[4]=0.36812; Ly[5]=0.35206; x=0.15; */ for( i=0;in;i++) { p=1; for(j=0;jn;j++) { if(i!=j) p=p*(x-Lx[j])/(Lx[i]-Lx[j]); } y+=p*Ly[i]; } printf(y=%f\n,y); getch(); } 实验2 最小二乘法 测得铜导线在温度(℃)时的电阻如下表,求电阻R与温度T的近似函数关系。 i 0 1 2 3 4 5 6 (℃) 19.1 25.0 30.1 36.0 40.0 45.1 50.0 76.30 77.80 79.25 80.80 82.35 83.90 85.10 #include stdio.h #include math.h float gs(float a[20][20],float b[20],int n ) {int i,j,k,l; float s; k=1; while(k!=n+1) { if(a[k][k]!=0) { for(i=k+1;i=n+1;i++) { a[i][k]=a[i][k]/a[k][k]; b[i]=b[i]-a[i][k]*b[k]; for(j=k+1;j=n+1;j++) a[i][j]=a[i][j]-a[i][k]*a[k][j]; } } k=k+1; } for(k=n+1;k=1;k--) { s=0; for(l=k+1;l=n+1;l++) s=s+a[k][l]*b[l]; b[k]=(b[k]-s)/a[k][k]; } return 0; } main() { static float b[20],Lx[20],Ly[20],c[20][20],ct[20][20],a[20][20]; int m,n,i,j,k=0,l; float s,rtn; printf(enter m=); scanf(%d,m); printf(enter n=); scanf(%d,n); printf(enter xi\n); for(i=1;i=m;i++) scanf(%f,Lx[i]); printf(enter yi\n);

文档评论(0)

书屋 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档