資源簡介
北航數值分析大作業 高斯/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? {
a[i]?=?new?double[n];
}
//輸入并展示相關參數
for?(int?i?=?0;?i?!=?n;?++i)
{
cout?<“請按順序輸入第“?< for?(int?j?=?0;?j?!=?n;?++j)
{
cin?>>?a[i][j];
}
}
for?(int?i?=?0;?i?!=?n;?++i)
{
cout?<“請按輸入第“?< 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? {
y[i]?=?1;
}
cout?<“迭代序列為:“?< c?=?print(y?n?c);
do
{
//x?=?y;
for?(int?i?=?0;?i? {
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?<“該算法失效“?< return?0;
}
cout?<“解向量為“?< for?(int?i?=?0;?i?!=?n;?++i)
cout?< cout?<“\n輸入1結束程序“?< int?end;
cin?>>?end;
if?(end?==?1)?return?1;
return?1;
}
void?print(double**?pa?double*?pb?const?int?n)//打印增廣矩陣
{
cout?<“增廣矩陣:“?< for?(int?i?=?0;?i?!=?n;?++i)
{
for?(int?j?=?0;?j?!=?n;?++j)
{
cout?< }
cout?< }
}
int?print(double*?x?const?int?n?int?c)//打印向量并修改迭代次數
{
cout?<“第“?< for?(int?i?=?0;?i?!=?n;?++i)
{
cout?< }
cout?< 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個文件信息
評論
共有 條評論