数值分析_迭代法.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
. . . 参考学习 华 北 科 技 学 院 上 机 报 告 系(部) 专业、班级 姓名 学号 课程名称 数值分析 上机题目   实验六,实验七   任课教师 指导教师 成绩(优、良、中、及格、不及格) 华 北 科 技 学 院 基 础 部 实验六 解线性方程组的迭代法 1.目的与要求: 熟悉求解线性方程组的有关理论哈方法。 会编制雅可比迭代和高斯—塞得尔迭代法。 通过实际计算,进一步了解各算法的优缺点,选择合适的数值方法。 2.雅可比迭代法 算法 设方程组AX=b的系数矩阵的对角元素M为迭代次数容许的最大值,为容许误差. 取初始向量令k=0; 对计算 如果则输出,结束;否则执行④, 如果则不收敛,终止程序;否则转②. 1.分别用雅可比迭代法与高斯-塞德尔迭代法解下列方程组: 1.用雅可比迭代法计算: #include stdafx.h #include iostream.h #includestdio.h #includemath.h #includeconio.h #includemalloc.h #include stdlib.h #define EPS 1e-8 #define MAX 100 float *Jacobi(float a[9][10],int n) { float *x,*y,s; double epsilon; int i,j,k=1; x=(float *)malloc(n*sizeof(float)); y=(float *)malloc(n*sizeof(float)); for(i=0;in;i++) x[i]=0; while(1) { k++; epsilon=0; for(i=0;in;i++) { s=0; for(j=0;jn;j++) { if(j==i) continue; s=s+a[i][j]*x[j]; } y[i]=(a[i][n]-s)/a[i][i]; epsilon=epsilon+fabs(y[i]-x[i]); } //if (epsilonEPS); if(k=MAX) { return y; } for(i=0;in;i++) x[i]=y[i]; } } void main() { int i; float a[9][10]={{31,-13,0,0,0,-10,0,0,0,-15}, {-13,35,-9,0,-11,0,0,0,0,27}, {0,-9,31,-10,0,0,0,0,0,-23}, {0,0,-10,79,-30,0,0,0,-9,0}, {0,0,0,-30,57,-7,0,-5,0,-20}, {0,0,0,0,7,47,-30,0,0,12}, {0,0,0,0,0,-30,41,0,0,-7}, {0,0,0,0,-5,0,0,27,-2,7}, {0,0,0,0,0,0,0,-2,29,-10}}; float *x; x=(float *)malloc(9*sizeof(float)); printf(结果为:\n); x=Jacobi(a,9); for(i=0;i9;i++) printf(x[%d]=%f\n,i,x[i]); } 程序运行结果如下: 结果为: x[0]=-0.200550 x[1]=0.368393 x[2]=-0.731859 x[3]=-0.300318 x[4]=-0.446577 x[5]=0.399384 x[6]=0.121501 x[7]=0.151792 x[8]=-0.334359 Press any key to continue 2.用高斯-塞德尔迭代法: #include stdafx.h #includestdio.h #includemath.h #includeconio.h #include iostream #includemalloc.h #define N 100 void main() { int i; float *x; float c[90]={31,-13,0,0,0,-10,0,0

文档评论(0)

zxiangd + 关注
实名认证
文档贡献者

本人从事教育还有多年,在这和大家互相交流学习

1亿VIP精品文档

相关文档