计算方法(C语言版)实验报告
实验四:解线性方程组的直接法(二)
(第三章)
一、实验目的:
1.用程序验证消元法和三角分解法。
2.掌握直接求解线性方程组的常用算法:列主元高斯消元法、LU分解法等。
3.记录运行结果,回答问题,完成实验报告。
二、实验条件:
Microsoft Visual C++
C-Free
三、实验内容及运行结果:
(一)、用LLT法求解对称正定线性方程组:
3x+2y+3z=5
2x+2y =3
3x+ 12z=7
1.源程序:
#include
#include
#define MAXSIZE 50
void input(double a[MAXSIZE][MAXSIZE],double x[MAXSIZE],long n);
void output(double x[MAXSIZE],long n);
int main(void)
{
double a[MAXSIZE][MAXSIZE],x[MAXSIZE],s;
long n,i,j,k;
printf("\n Please enter the order number of the original equations:"); scanf("%ld",&n);
input(a,x,n);
for(k=0;k<=n-1;k++)
{
s=0;
for(j=0;j<=k-1;j++)
s+=a[k][j]*a[k][j];
a[k][k]=sqrt(a[k][k]-s);
for(i=k+1;i<=n-1;i++)
{
s=0;