- 5
- 0
- 约4.62千字
- 约 7页
- 2018-04-27 发布于江苏
- 举报
李鸿实验二
数值分析实验报告
实验序号:实验二 题目:高斯消元法
学号:20111104386 姓名:李鸿
任课教师:马季骕 班级:11级非师范计科
实验目的及要求
程序的源代码
实验操作
实验结果及分析
实验目的及要求
对一个三阶矩阵运用列主元素消元法求解。矩阵如下:
12X1-3X2+3X3=15
-18X1+3X2-X3=-15
X1+X2+X3=6
实验目的及要求
用编程的方法实现列主元消元法解线性方程组。主元素消去发是为控制舍入误差而提出来的一种算法,在GAUSS消去发的消元过程中,若出现a[k][k][k]=0,则消元无法进行,及时a[k][k][k]!=0,但是很小,把它作为除数,就会导致其他元素量级的巨大增长和舍入误差的扩散,最后使得计算结果不可靠,列主元消去发和GAUSS消去发的计算过程基本是一样的,只是在每消去一个元素之前要选择列主元,以保证舍入误差不扩散。
2 程序的源代码
#include iostream
using namespace std;
double jdz(double x)
{
if(x0)
x=-1*x;
return x;
}
int main ()
{
int n,i,j,k,flag,p;
double a[100][100],b[100],max,temp,m,x[100],f;
cout请输入系数矩阵阶数:n=;
while(cinn)
{
cout请输入方程的增广矩阵:\n;
for(i=1;i=n;i++)
{
for(j=1;j=n+1;j++)
{
cina[i][j];
}
}
for(j=1;j=n-1;j++)
{
max=jdz(a[j][j]);
f=a[j][j];
flag=j;
for(i=j+1;i=n;i++)
{
if(jdz(a[i][j])max)
{
max=jdz(a[i][j]);
flag=i;
f=jdz(a[i][j]);
}
}
cout从第j行开始,第j列绝对值最大的元素为:f
,所在行:第flag行endl;
if(flag!=j)
{
cout将第j行与第flag行交换,;
for(k=1;k=n+1;k++)
{
temp=a[j][k];
a[j][k]=a[flag][k];
a[flag][k]=temp;
}
cout得到矩阵:\n;
for(i=1;i=n;i++)
{
for(p=1;p=n+1;p++)
{
couta[i][p] ;
}
coutendl;
}
}
else
{
cout不用进行换行!endl;
}
for(i=j+1;i=n;i++)
{
m=a[i][j]/a[j][j];
for(p=j;p=n+1;p++)
{
a[i][p]-=m*a[j][p];
您可能关注的文档
最近下载
- 2025新教材-译林版-七年级英语-上册-单词表.xlsx VIP
- 山西省农村信用社(农村商业银行合作银行)个人网上银行.pdf VIP
- XX市非公经济人才引进问题研究XX市重点软科学项目R2004A04研究报告 1【XX市重点软科学项目R2004A04研究报告】XX市非公经济人才引进问题研究执笔: XX大学经济学院 张一力课题主持人:张一力 副.doc VIP
- 船舶空调装置的实例与管理课件.PPT VIP
- 2025-2026学年黑龙江省大庆市高三上学期一模物理试题(附答案解析).docx VIP
- 软科学课题研究报告.doc VIP
- 高中物理必修2全册基础典型练习题(精品含答案).pdf VIP
- 便民摊点抓阄方案.doc VIP
- 中国领汇团队公开课一外汇通论.ppt
- 八年级物理 第6章 质量与密度 精选单元测试题(含答案).doc VIP
原创力文档

文档评论(0)