数值分析作业(C语言编程实现).doc

  1. 1、本文档共12页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
数值分析作业(C语言编程实现)

#include stdio.h #include math.h double f(double x) { double ans; ans=exp(x); return ans; } void main() { double a=1,b=3,error=0.0001,t[20][20],h,c; int i,j,k,m,n; h=b-a; t[0][0]=h*(f(a)+f(b))/2; k=1; while(1) { t[0][k]=0; m=1; for(j=0;jk-1;j++) m=m*2; for(i=1;i=m;i++) t[0][k]=t[0][k]+h*f(a+(i-0.5)*h); t[0][k]=(t[0][k]+t[0][k-1])/2; for(j=1;j=k;j++) { c=1; for(n=0;nj;n++) c=c*4; t[j][k-j]=(c*t[j-1][k-j+1]-t[j-1][k-j])/(c-1); } if(fabs(t[k][0]-t[k-1][0])error) { printf(\n积分结果 I ≈ %lf\n,t[k][0]); break; } else { h=h/2; k++; } } } #include stdio.h #include math.h double f(double t) { double ans; ans=pow(cos(t),1.0/3); return ans; } void main() { double x=0,eslong=0.000001,x0; int N=20,i; printf(\n近似初值 x0 = %lf\n,x); for(i=0;iN;i++) { x0=x; x=f(x); printf( x%d = %lf\n,i+1,x); if(fabs(x-x0)eslong) break; } if(fabs(x-x0)eslong) printf(得到近似结果为 x ≈ %lf\n\n,x,i); else printf(迭代失败\n); } #include stdio.h #include math.h double a=0,b=1,x,y=0,h=0.1,k1,k2,k3,k4; int i,N; double f(double t,double s) { double ans; ans=1+t*t; return ans; } void main() { N=(b-a)/h; x=a; printf(\n 初值为 (x0,y0) = ( %.8f , %.8f )\n,x,y); for(i=0;iN;i++) { k1=f(x,y); k2=f(x+h/2,y+h*k1/2); k3=f(x+h/2,y+h*k2/2); k4=f(x+h,y+h*k3); y=y+h*(k1+2*(k2+k3)+k4)/6; x=x+h; printf( 第%d次输出结果为 (x%d,y%d) = ( %.8f , %.8f )\n,i+1,i+1,i+1,x,y); } } #include stdio.h void main() { double datax[4]={1.2,2.9,4.6,5.8},datay[10]={14.84,33.71,58.36,79.24},l[3],x=1.5,y; int i,j; y=0; for(i=0;i=3;i++) { l[i]=1; for(j=0;ji;j++) l[i]=(x-datax[j])/(datax[i]-datax[j])*l[i]; for(j=i+1;j=3;j++) l[i]=(x-datax[j])/(datax[i]-datax[j])*l[i]; y=y+datay[i]*l[i]; } printf(\n f(x)在 x = %f 处的近似值为: y = %f\n,x,y); } #include stdio.h void main() { double datay[9]={11.7,14.87,21.44,31.39,44.73,61.46,81.57,105.11,131.91}; int m=2,i,j,k; double p,data[9][4]

文档评论(0)

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

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

1亿VIP精品文档

相关文档