(一)Gauss(高斯)消去法解线性代数方程代码与理解
Gauss消去法,又叫全选主元高斯(Gauss)消去法,一般用于求解线性方程组和矩阵的秩,与之相对的是Gauss-Jordan消元法,也称全选主元高斯约旦(Gauss-Jordan)消去法,是Jordan对Gauss消去法的一种改进,一般用于求解线性方程组和矩阵的逆。
#include "stdafx.h"
#include<stdlib.h>
#include<iostream>
using namespace std;
#include<fstream>
#include<math.h>
#define size 10
typedef double matrix[size][size];
void gauss(matrix& a, int m, int&flag1)//a是实型二维数组
{
int i, j, k, n, rowindex; double pivot, inter;
n = m + 1;
for (i = 1; i <= m; i++)
{
pivot = fabs(a[i][i]);
rowindex = i;
for(j=i+1;j<=m;j++)
if(fabs(a[j][i])>pivot)
{
pivot = fabs(a[j][i]); rowindex = j;}
if (pivot < 1.0e-6) { flag1 = 0; break; }
if(rowindex!=i)//互换两行
for(k=i;k<=n;k++)