资源简介
北航数值分析大作业 高斯/sor迭代法.zip
代码片段和文件信息
#include
using namespace std;
int main()
{
void print(double** pa double* pb const int n);//打印增广矩阵
int print(double* x const int n int c);//打印向量并修改迭代次数
int n;//系数矩阵的行数/列数
cout << “请输入方程的个数“ << “\n默认情况下,方程个数等于变量个数\n“;
cin >> n;
int flag = 1;//标志位,显示该算法是否成功
//动态分配数组
double **a = new double *[n];//系数矩阵
double *b = new double[n];//方程右端向量
double *x = new double[n];//解向量
double *y = new double[n];//解向量
for (int i = 0; i < n; ++i)
{
a[i] = new double[n];
}
//输入并展示相关参数
for (int i = 0; i != n; ++i)
{
cout << “请按顺序输入第“ << i + 1 << “个方程的系数“ << endl;
for (int j = 0; j != n; ++j)
{
cin >> a[i][j];
}
}
for (int i = 0; i != n; ++i)
{
cout << “请按输入第“ << i + 1 << “个方程右端的值“ << endl;
cin >> b[i];
}
print(a b n);
//迭代
for (int i = 0; i != n; ++i)//判断系数矩阵是否满足条件
{
if (!(a[i][i]))
{
flag = 0;
break;
}
}
int c = 0;//c为迭代次数
if (flag)
{
double sum f1 e;//sum为求和中间变量,f1为迭代前后向量的差的第一范数,e为误差
e = 0.00001;
for (int i = 0; i < n; ++i)//迭代初始向量,此处设为0向量
{
y[i] = 1;
}
cout << “迭代序列为:“ << endl;
c = print(y n c);
do
{
//x = y;
for (int i = 0; i < n; ++i)//迭代初始向量,此处设为0向量
{
x[i] = y[i];
}
for (int i = 0; i != n; ++i)
{
sum = 0;
for (int j = 0; j != i; ++j)
{
sum += a[i][j] * y[j];
}
for (int j = i+1; j != n; ++j)
{
sum += a[i][j] * x[j];
}
y[i] = (b[i] - sum) / a[i][i];
}
c = print(y n c);
f1 = 0;
for (int i = 0; i != n; ++i)
{
f1 = abs(x[i] - y[i]) > f1 ? abs(x[i]-y[i]) : f1;
}
} while ((f1 > e) && (c<1000));
}
if ((!flag) || (c == 1000))
{
cout << “该算法失效“ << endl;
return 0;
}
cout << “解向量为“ << endl;
for (int i = 0; i != n; ++i)
cout << y[i] << “\t“;
cout << “\n输入1结束程序“ << endl;
int end;
cin >> end;
if (end == 1) return 1;
return 1;
}
void print(double** pa double* pb const int n)//打印增广矩阵
{
cout << “增广矩阵:“ << endl;
for (int i = 0; i != n; ++i)
{
for (int j = 0; j != n; ++j)
{
cout << pa[i][j] << “\t“;
}
cout << pb[i] << endl;
}
}
int print(double* x const int n int c)//打印向量并修改迭代次数
{
cout << “第“ << c << “次迭代\t“;
for (int i = 0; i != n; ++i)
{
cout << x[i] << “\t“;
}
cout << endl;
return ++c;
}
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2019-10-22 20:52 迭代法\
目录 0 2019-10-22 20:52 迭代法\gauss-seidel\
目录 0 2019-11-01 21:31 迭代法\gauss-seidel\Project1\
目录 0 2019-11-01 18:21 迭代法\gauss-seidel\Project1\.vs\
目录 0 2019-11-01 18:21 迭代法\gauss-seidel\Project1\.vs\Project1\
目录 0 2019-11-03 22:03 迭代法\gauss-seidel\Project1\.vs\Project1\v15\
文件 28160 2019-11-03 22:03 迭代法\gauss-seidel\Project1\.vs\Project1\v15\.suo
文件 5058560 2019-11-03 22:03 迭代法\gauss-seidel\Project1\.vs\Project1\v15\Browse.VC.db
目录 0 2019-11-01 18:21 迭代法\gauss-seidel\Project1\.vs\Project1\v15\ipch\
目录 0 2019-11-01 18:21 迭代法\gauss-seidel\Project1\.vs\Project1\v15\ipch\AutoPCH\
目录 0 2019-11-01 18:21 迭代法\gauss-seidel\Project1\.vs\Project1\v15\ipch\AutoPCH\aa5bd4361fbfa618\
文件 30670848 2019-11-03 18:37 迭代法\gauss-seidel\Project1\.vs\Project1\v15\ipch\AutoPCH\aa5bd4361fbfa618\GAUSS-SEIDEL.ipch
目录 0 2019-11-01 20:53 迭代法\gauss-seidel\Project1\Debug\
文件 56320 2019-11-01 21:33 迭代法\gauss-seidel\Project1\Debug\Project1.exe
文件 468480 2019-11-01 21:33 迭代法\gauss-seidel\Project1\Debug\Project1.ilk
文件 692224 2019-11-01 21:33 迭代法\gauss-seidel\Project1\Debug\Project1.pdb
目录 0 2019-11-01 21:33 迭代法\gauss-seidel\Project1\Project1\
目录 0 2019-11-01 21:33 迭代法\gauss-seidel\Project1\Project1\Debug\
文件 127 2019-11-01 21:33 迭代法\gauss-seidel\Project1\Project1\Debug\Project1.log
目录 0 2019-11-01 21:33 迭代法\gauss-seidel\Project1\Project1\Debug\Project1.tlog\
文件 17494 2019-11-01 21:33 迭代法\gauss-seidel\Project1\Project1\Debug\Project1.tlog\CL.read.1.tlog
文件 548 2019-11-01 21:33 迭代法\gauss-seidel\Project1\Project1\Debug\Project1.tlog\CL.write.1.tlog
文件 237 2019-11-01 21:33 迭代法\gauss-seidel\Project1\Project1\Debug\Project1.tlog\Project1.lastbuildstate
文件 1246 2019-11-01 21:33 迭代法\gauss-seidel\Project1\Project1\Debug\Project1.tlog\cl.command.1.tlog
文件 2336 2019-11-01 21:33 迭代法\gauss-seidel\Project1\Project1\Debug\Project1.tlog\li
文件 714 2019-11-01 20:53 迭代法\gauss-seidel\Project1\Project1\Debug\Project1.tlog\li
文件 2790 2019-11-01 21:33 迭代法\gauss-seidel\Project1\Project1\Debug\Project1.tlog\li
文件 510 2019-11-01 21:33 迭代法\gauss-seidel\Project1\Project1\Debug\Project1.tlog\li
文件 67408 2019-11-01 21:33 迭代法\gauss-seidel\Project1\Project1\Debug\gauss-seidel.obj
文件 67234 2019-11-01 20:53 迭代法\gauss-seidel\Project1\Project1\Debug\gauss-seidel.obj.enc
文件 257024 2017-11-07 22:53 迭代法\gauss-seidel\Project1\Project1\Debug\vc120.idb
............此处省略62个文件信息
相关资源
- 数值分析第三版电子书
- 西电研究生数值分析课件以及答案
- 北航 数理统计判别分析大作业
- 数值分析北航习题答案-精简版
- COMSOL Multiphysics工程实践与理论仿真
- 数值分析.索尔.中文版.rar
- 四川大学数值分析试题
- 北航961计算机2010-2018高清版真题及答
- 数值分析经典经典教材 Numerical Analy
- 54数值分析(2nd)华章中文.zip
- 数值分析 第5版 超清带书签 李庆扬
- 矩阵与数值分析 矩阵与数值分析
- 北航961初试资料 真题+ppt+期中期末+教
- 数值分析算法之反幂法
- 手把手教你学DSP:基于TMS320F28335(北
- 数值分析课程论文
- 数值分析 第5版 李庆扬
- 数值分析实验报告完整版
- 数值分析答案
- 数值分析(原书第2版)萨奥尔 、 裴
- 数值分析王兵团高清扫描版教材
- 数值分析北航大作业 QR分解求特征值
- 数值分析第五版_李庆扬,王能超,易
- 东北大学数值分析报告
- 安徽大学数值分析实验及实验报告
- 北航计算机组成实验Project7
- Visual Fortran 常用数值算法集代码
- 数值分析.索尔.习题参考答案
- 混合交直流潮流计算交替迭代法.rar
- 数值分析公式
评论
共有 条评论