1 / 3
文档名称:

数值分析实验报告四.doc

格式:doc   大小:37KB   页数:3页
下载后只包含 1 个 DOC 格式的文档,没有任何的图纸或源代码,查看文件列表

如果您已付费下载过本站文档,您可以点这里二次下载

分享

预览

数值分析实验报告四.doc

上传人:资料分享 2018/6/21 文件大小:37 KB

下载得到文件列表

数值分析实验报告四.doc

文档介绍

文档介绍:数值分析实验报告(四)
一、实验名称
三角分解法解方程组。
二、实验目的
利用三角分解法解方程组的直接法。
三、题目
利用三角分解法解方程组。
四、程序
#include<>
#include<>
#include<>
#include<>
#define AL 100
#define ROW 100
void main(){
int n;
double A[AL][ROW];
double b[AL];
int i,j;
char flag='n';
cout<<"输入方程的阶数: "<<endl;
cin>>n;
cout<<"输入方程的系数矩阵A: "<<endl;
for(i=0;i<n;i++)
for(j=0;j<n;j++)
cin>>A[i][j];
cout<<"输入方程的常数项b: "<<endl;
for(i=0;i<n;i++)
cin>>b[i];
cout<<endl;
//.........计算L矩阵和U矩阵(都放到A矩阵里)..........
int k;
double sum_1=0;
for(k=0;k<n-1;k++){//循环
//L矩阵算法
for(i=k+1;i<n;i++){
sum_1=0;
for(int m=0;m<k;m++)
sum_1+=A[i][m]*A[m][k];
A[i][k]=(A[i][k]-sum_1)/A[k][k];
}
//U矩阵算法
for(i=k+1;i<n;i++){
sum_1=0;
for(int m=0;m<k+1;m++)
sum_1+=A[k+1][m]*A[m][i];
A[k+1][i]-=sum_1;
}
}

//.............. LUX=b ......................
//第一步:UX=X_*,算LX_*=b,得到Y(即b[i])
cout<<"第一步:UX=X_*,算LX_*=b,得到Y"<<endl;
for(i=0;i<n;i++){
sum_1=0;
for(j=i;j>0;j--)
sum_1+=A[i][j-1]*b[j-1];
b[