ImageVerifierCode 换一换
格式:DOCX , 页数:23 ,大小:22.34KB ,
资源ID:5667187      下载积分:1 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bingdoc.com/d-5667187.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(数值计算方法编程作业C语言版Word文档下载推荐.docx)为本站会员(b****2)主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(发送邮件至service@bingdoc.com或直接QQ联系客服),我们立即给予删除!

数值计算方法编程作业C语言版Word文档下载推荐.docx

1、 else break; while(fabs(b-a)/*判断是否达到精度要求,若没有达到,继续循环*/ x=(a+b)/2; /* 取最后的小区间中点作为根的近似值 */n The root is x=%f, k=%dn,x,k);运行结果:intput epsa,b=2,-5 The root is x=, k=20Press any key to continue总结:本题关键在于两个端点的取值和误差的判断,此程序较容易。二分法收敛速度较快,但缺点是只能求解单根。 (2)牛顿法求解非线性方程:float f(float x) /* 定义函数f(x) */ return(-3*x+4)*

2、x-5)*x+6;float f1(float x) /* 定义函数f(x)的导数 */ return (-9*x+8)*x-5; float eps,x0,x1=;input eps: /* 输入容许误差 */ x0=x1; /* 准备下一次迭代的初值 */ x1=x0-f(x0)/f1(x0); /* 牛顿迭代 */ while(fabs(x1-x0) /*当满足精度,输出近似根*/x=%fn,x1);程序运行结果:x=关键是牛顿迭代的应用,程序中最大缺点是函数及其导数已唯一给出确定不可求的随意函数的根,牛顿法比二分法收敛快,可以求重根。2:第三章(1)列主元素消去法求解线性方程:iost

3、reamcmath#define N 20using namespace std;void load();float aNN;int m;int main() int i,j; int c,k,n,p,r; float xN,lNN,s,d; coutm;endl;请按顺序输入增广矩阵a: load(); for(i=0;ii+) for(j=i;jfabs(aii)?j:i; /*找列最大元素*/ for(n=0;nm+1;n+) s=ain; ain=acn; acn=s; /*将列最大数防在对角线上*/ for(p=0;pp+)aipt for(k=i+1;kk+) lki=aki/ai

4、i; for(r=i;r=0;i-) d=0; for(j=i+1;j+) d=d+aij*xj; xi=(aim-d)/aii; /*求解*/该方程组的解为: coutx=xiaij; 下面请输入未知数的个数m=31 2 3 45 1 0 84 6 9 20 x0= x1=58 x2=-34 Press any key to continue列主元素消去法的目的是为了防止减去一个较小的数时大数淹没小数,而使结果产生较大误差,本程序关键在每次消元时找到相应列中的最大项,然后交换两行位置,在进行计算。(2)LU分解法求解线性方程:void solve(float l100,float u100,

5、float b,float x,int n)int i,j;float t,s1,s2;float y100;for(i=1;=n;i+) /* 第一次回代过程开始 */ s1=0; for(j=1; t=-lij; s1=s1+t*yj; yi=(bi+s1)/lii;for(i=n;=1;i-) /* 第二次回代过程开始 */ s2=0; for(j=n;jj-) t=-uij; s2=s2+t*xj; xi=(yi+s2)/uii;float a100100,l100100,u100100,x100,b100;int i,j,n,r,k;float s1,s2;=99;i+)/*将所有的

6、数组置零,同时将L矩阵的对角值设为1*/ for(j=1; lij=0,uij=0; if(j=i) lij=1;printf (input n:/*输入方程组的个数*/scanf(%dn);input array A:/*读取原矩阵A*/aij);input array B:/*读取列矩阵B*/bi);for(r=1;r+)/*求解矩阵L和U*/ for(i=r; s1=0; for(k=1;=r-1;k+) s1=s1+lrk*uki; uri=ari-s1; for(i=r+1; s2=0; s2=s2+lik*ukr; lir=(air-s2)/urr;printf(array L:/

7、*输出矩阵L*/% ,lij);array U:/*输出矩阵U*/,uij);solve(l,u,b,x,n);解为:x%d=%fn,i,xi);32 2 34 7 7-2 4 53 1 -7 x1=x2=x3=关键是把矩阵分解为L、U两个三角矩阵,回代过程比较简单。3:第四章(1)拉格朗日差值多项式;#define MAX 100 int i,j,k,m,n,N,mi; float tmp,mx; float XMAXMAX,YMAX,xMAX,yMAX,aMAX;n 输入拟合多项式的次数:m);n 输入给定点的个数n及坐标(x,y):N);N; scanf(%f,%fxi,&yi);=m;

8、 tmp=0; for(k=0; tmp=tmp+pow(xk,(i+j); Xij=tmp; Xji=Xij; tmp=tmp+yk*pow(xk,i); Yi=tmp; for(j=0; for(i=j+1,mi=j,mx=fabs(Xjj); if(fabs(Xij)mx) mi=i; mx=fabs(Xij); if(j=fabs(au)printf(“failn”);return(-1);p=eps+;while(p=eps)for(i=0;t=xi;s=;if(j!=i)s=s+ai*n+j*xj;xi=(bi-s)/ai*n+j;q=fabs(xi-t)/+fabs(xi);if(qp)p=q;return(1);int i;double eps;static double a44=7,2,1,-29,15,3,-2-2,-2,11,51,3,2,13;static double x5,b4=4,7,-1,0;eps=;if(dsdl(a,b,4,x,eps)0)=3;printf(“x(%d)=%n”,i,xi);

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2