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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

本文(直接法解线性方程组.docx)为本站会员(b****4)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

直接法解线性方程组.docx

1、直接法解线性方程组长 沙 理 工 大 学数学与计算科学学院实 验 报 告实验项目名称 直接法解线性方程组 所属课程名称 数值方法A 实 验 类 型 验证型 实 验 日 期 2014.11.28 班 级 信计12- 学 号 201253100 姓 名 成 绩 一、实验概述:【实验目的】1.掌握用C语言编程实现追赶法求解三对角线性方程组;2.掌握运用高斯列主元消去法解线性方程组;3.加深对解线性方程组的直接法高斯列主消元法和LU分解法的构造过程的理解;4.熟悉并掌握各种方法的适用对象及优缺点,学会针对不同问题选择不同方法;5.培养使用电子计算机进行科学计算和解决问题的能力。【实验原理】1.追赶法原

2、理2.高斯列主元消去法【实验环境】1.硬件环境2.软件环境(1)(2)VC+ 6.0二、实验内容:【实验过程】(实验步骤)1.实验步骤 1)深入了解解题过程并依次写出解题算法; 2)依照算法用C语言编写解题程序; 3)上机时将写好的程序输入到VC+中并调试运行得出方程的解; 4)比较几种方法之间的联系与区别。2.1追赶法根据以上的实验原理,在VC+编辑框中输入源程序: 由原理可知:b1=2,c1=-1,f1=1 a2=-1,b2=2,c2=-1,f2=0a3=-1,b3=2,c3=-1,f3=0a4=-1,b4=2,c4=-1,f4=0a5=-1,b5=2 ,f5=0 将上述系数逐个输入运行框

3、, 并经过多次调试运行,最终运行出结果如下:2.1 Gauss消元法1)数据输入main(void) float A44=0.4096,0.1234,0.3678,0.2943, 0.2246,0.3872,0.4015,0.1129, 0.3645,0.1920,0.3781,0.0643, 0.1784,0.4002,0.2786,0.3927; float b4=0.4043,0.1550,0.4240,-0.2557; float x4=0; float Aik,S; int i,j,k; int size=4; printf(An); for(i=0;isize;i+) for(j=

4、0;jsize;j+) printf(%f ,Aij); printf(n); printf(bn); for(i=0;isize;i+) printf(%f ,bi); printf(nn);2)消去过程 /消去过程 for(k=0;ksize-1;k+) if(!Akk) return -1; for(i=k+1;isize;i+) Aik=Aik/Akk; for(j=k;jsize;j+) Aij=Aij-Aik*Akj; bi=bi-Aik*bk; /消去的结果 printf(An); for(i=0;isize;i+) for(j=0;jsize;j+) printf(%f ,Ai

5、j); printf(n); printf(bn); for(i=0;i=0;k-) S=bk; for(j=k+1;jsize;j+) S=S-Akj*xj; xk=S/Akk; 4)结果输出/solution printf(The solution x=n); for(i=0;isize;i+) printf(%f ,xi); return 0;得如下结果: 即2.2 列主元消去法1)数据输入int main(void)float A44=0.4096,0.1234,0.3678,0.2943, 0.2246,0.3872,0.4015,0.1129, 0.3645,0.1920,0.37

6、81,0.0643, 0.1784,0.4002,0.2786,0.3927; float b4=0.4043,0.1550,0.4240,-0.2557; float x4=0; float Aik,S,temp; int i,j,k; float max;/列主元的绝对值 int col;/列主元所在的行 int size=4; printf(An); for(i=0;isize;i+) for(j=0;jsize;j+) printf(%f ,Aij); printf(n); printf(bn); for(i=0;isize;i+) printf(%f ,bi); printf(nn)

7、;2)消去过程 /-消去过程- for(k=0;ksize-1;k+) max=fabs(Akk); col=k; /查找最大元素所在的行 for(i=k;isize;i+) if(maxfabs(Aik) max=fabs(Aik); col=i; printf(col:%dn,col); for(j=k;jsize;j+) temp=Acolj; Acolj=Akj; Akj=temp; temp=bcol;bcol=bk;bk=temp; if(!Akk) return -1; for(i=k+1;isize;i+) Aik=Aik/Akk; for(j=k;jsize;j+) Aij=

8、Aij-Aik*Akj; bi=bi-Aik*bk; /消去的结果 printf(An); for(i=0;isize;i+) for(j=0;jsize;j+) printf(%f ,Aij); printf(n); printf(bn); for(i=0;i=0;k-) S=bk; for(j=k+1;jsize;j+) S=S-Akj*xj; xk=S/Akk; 4)结果输出 /solution printf(The solution x=n); for(i=0;isize;i+) printf(%f ,xi); return 0; 将上述各部分程序组合到一起并调试运行得出结果如下: 即

9、。【实验结论】(结果)1.追赶法结果2.高斯消去法和列主元消去法1)高斯消去法结果截图:2)列主元消去法结果截图:【实验小结】(收获体会) 通过运用追赶法来求解三对角方程组的问题.追赶法是用来求解三对角方程组的专用方法,对于三对角方程组,追赶法比Gauss消去法的计算量要小的多。本次实验让我了解到了C语言功能的强大,也让我意识到了算法对于程序编写的重要程度,只有学好逻辑,学好算法,才能使用编程使计算精度进一步提高。三、指导教师评语及成绩:评 语评语等级优良中及格不及格1.实验报告按时完成,字迹清楚,文字叙述流畅,逻辑性强2.实验方案设计合理3.实验过程(实验步骤详细,记录完整,数据合理,分析透

10、彻)4实验结论正确. 成 绩: 指导教师签名: 批阅日期:附录:源 程 序程序1:#include#include#include#define MAX_n 100#define PRECISION O.000001void SulutionOutput(float x,int n) int i; for(i=1;i=n;+i) printf(nx%d=%f,i,xi);void TriDiagonalMatrixInput(float a,float b,float c,float f,int n) int i; printf(请输入b1,c1,f1:); scanf(%f%f%f,&b1,

11、&c1,&f1); for(i=2;in;+i) printf(请输入a%d,b%d,c%d,f%d:,i,i,i,i); scanf(%f%f%f%f,&ai,&bi,&ci,&fi); printf(请输入a%d,b%d,f%d:,n,n,n); scanf(%f%f%f,&an,&bn,&fn);void Z_G_method(float a,float b,float c,float f,int n) int i; c1/=b1; for(i=2;in;+i) ci/=(bi-ai*ci-1); f1/=b1; for(i=2;i0;-i) fi-=ci*fi+1;void main(

12、) int n; float aMAX_n,bMAX_n,cMAX_n; float fMAX_n; printf(n请输入 n=); scanf(%d,&n); TriDiagonalMatrixInput(a,b,c,f,n); Z_G_method(a,b,c,f,n); SulutionOutput(f,n);程序2:1)高斯消去法程序:#includemain(void) float A44=0.4096,0.1234,0.3678,0.2943, 0.2246,0.3872,0.4015,0.1129, 0.3645,0.1920,0.3781,0.0643, 0.1784,0.4

13、002,0.2786,0.3927; float b4=0.4043,0.1550,0.4240,-0.2557; float x4=0; float Aik,S; int i,j,k; int size=4; printf(An); for(i=0;isize;i+) for(j=0;jsize;j+) printf(%f ,Aij); printf(n); printf(bn); for(i=0;isize;i+) printf(%f ,bi); printf(nn); /消去过程 for(k=0;ksize-1;k+) if(!Akk) return -1; for(i=k+1;isiz

14、e;i+) Aik=Aik/Akk; for(j=k;jsize;j+) Aij=Aij-Aik*Akj; bi=bi-Aik*bk; /消去的结果 printf(An); for(i=0;isize;i+) for(j=0;jsize;j+) printf(%f ,Aij); printf(n); printf(bn); for(i=0;i=0;k-) S=bk; for(j=k+1;jsize;j+) S=S-Akj*xj; xk=S/Akk; /solution printf(The solution x=n); for(i=0;isize;i+) printf(%f ,xi); ret

15、urn 0;2)列主元消去法程序:#include#includeint main(void)float A44=0.4096,0.1234,0.3678,0.2943, 0.2246,0.3872,0.4015,0.1129, 0.3645,0.1920,0.3781,0.0643, 0.1784,0.4002,0.2786,0.3927; float b4=0.4043,0.1550,0.4240,-0.2557; float x4=0; float Aik,S,temp; int i,j,k; float max;/列主元的绝对值 int col;/列主元所在的行 int size=4;

16、 printf(An); for(i=0;isize;i+) for(j=0;jsize;j+) printf(%f ,Aij); printf(n); printf(bn); for(i=0;isize;i+) printf(%f ,bi); printf(nn); /-消去过程- for(k=0;ksize-1;k+) max=fabs(Akk); col=k; /查找最大元素所在的行 for(i=k;isize;i+) if(maxfabs(Aik) max=fabs(Aik); col=i; printf(col:%dn,col); for(j=k;jsize;j+) temp=Aco

17、lj; Acolj=Akj; Akj=temp; temp=bcol;bcol=bk;bk=temp; if(!Akk) return -1; for(i=k+1;isize;i+) Aik=Aik/Akk; for(j=k;jsize;j+) Aij=Aij-Aik*Akj; bi=bi-Aik*bk; /消去的结果 printf(An); for(i=0;isize;i+) for(j=0;jsize;j+) printf(%f ,Aij); printf(n); printf(bn); for(i=0;i=0;k-) S=bk; for(j=k+1;jsize;j+) S=S-Akj*xj; xk=S/Akk; /solution printf(The solution x=n); for(i=0;isize;i+) printf(%f ,xi); return 0;

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1