求解线性方程组之高斯消元法
来源:互联网 发布:赢在大数据系列丛书 编辑:程序博客网 时间:2024/05/22 13:07
// Gauss消去法求解线性方程组
#include <iostream>
#include <math.h>
#include <process.h>
using namespace std;
class gauss
{
private:
int i, j, k, n;
double eps, ratio, sum, *x, **a;
public:
void gauss_input();
void gauss_elimination();
void gauss_output();
~gauss()
{
delete[] x;
for (i = 0; i < n; i++)
{
delete[] a[i];
}
delete[] a;
}
};
void main()
{
gauss solution;
solution.gauss_input();
solution.gauss_elimination();
solution.gauss_output();
}
void gauss::gauss_input()
{
cout << "输入方程的个数:";
cin >> n;
x = new double[n];
a = new double*[n];
for (i = 0; i < n; i++)
{
a[i] = new double[n+1];
}
for (i = 0; i < n; i++)
for (j = 0; j < n; j++)
{
cout << "\n输入a[" << i << "][" << j << "] = ";
cin >> a[i][j];
}
for (i = 0; i < n; i++)
{
cout << "\n输入b[" << i << "] = ";
cin >> a[i][n];
}
cout << "\n输入最小主元素:";
cin >> eps;
}
void gauss::gauss_elimination()
{
for (k = 0; k < (n-1); k++)
{
for (i = (k+1); i < n; i++)
{
if (fabs(a[k][k]) < eps)
{
cout << "\n主元素太小,失败..." << endl;
exit(0);
}
ratio = a[i][k]/a[k][k];
for (j = (k+1); j < (n+1); j++)
{
a[i][j] -= ratio*a[k][j];
}
a[i][k] = 0;
}
}
x[n-1] = a[n-1][n] / a[n-1][n-1];
for (i = n-2; i >= 0; i--)
{
sum = 0.0;
for (j = i + 1; j < n; j++)
{
sum += a[i][j] * x[j];
}
x[i] = (a[i][n] - sum) / a[i][i];
}
}
void gauss::gauss_output()
{
cout << "\n结果是:" << endl;
for (i = 0; i < n; i++)
{
cout << "\nx[" << i << "] = " << x[i] << endl;
}
}
- 求解线性方程组之高斯消元法
- 高斯消元法求解线性方程组
- 求解线性方程组之全选主元高斯消元法
- 求解线性方程组之LU分解
- 求解线性方程组之Cholesky分解
- 求解线性方程组之Thomas法
- 高斯消元法——求解线性方程组
- 求解线性方程组
- 线性方程组求解
- 求解线性方程组
- 求解线性方程组之Gauss_Jordan消去法
- 算法总结之求解模线性方程组
- 算法总结之求解模线性方程组
- EOJ1040 高斯消元法求解线性方程组的解
- 求解线性方程组之超松弛Gauss_Seidel迭代
- Matlab线性方程组求解
- 求解线性方程组--追赶法
- 求解线性方程组--Jacobi迭代法
- 【游戏引擎】深入分析Cocos2d-x 2.0中的“纹理”(四)
- 不在Activity类中(没有context)怎么删除动态控件?
- 7.1 简单枚举---7.1.1除法
- hdu 1198
- jsp中c标签的使用
- 求解线性方程组之高斯消元法
- sae上屏蔽错误显示并查看错误日志
- 灾难日:中国互联网惨遭Struts2高危漏洞摧残
- loadrunner 11.0测试.net框架下的webservice.
- android 数据持久化——I/O操作
- 2013年7月22日 11:13:34
- “冰块比马桶水脏”让人透心凉
- F2812 PIE简介
- PHP获取客户端IP地址