高斯消元法(n 3)順序,主元,約當

2021-10-05 06:12:12 字數 2359 閱讀 6099

模板題目

//順序高斯消元

//拿列主元隨便改的

int n;

double a[

111]

[111

],ans[

111]

;signed

main()

// rpp(i,n)

// // cout// cout<}

for(

int i=n;i>=1;

--i)

rpp(i,n)

printf

("%.2f\n"

,ans[i]);

cout

return0;

}

//列主元消除法(加減消元+代入消元)

//和順序消除法相比,只多了乙個選擇每項最大主元

//和全主元消除法相比,差別在於全主元是在右下角的矩陣內選擇最大值作為主元

//列主元只在該列尋找

//判斷解的情況

//對於無解的判斷:某一行前 nnn 個數均為 0,最後的結果卻不為 000。

//對於無數解的判斷:某一行 n+1n+1n+1 個數均為 000.

int n;

double a[

111]

[111

],ans[

111]

;signed

main()

//(2)將該行主元係數置為1

double tmp=a[i]

[i];

rpp(j,n+

1) a[i]

[j]/

=tmp;

//(3)將該行以下的該項係數全部變成0

for(

int j=i+

1;j<=n;

++j)

}//(4)回代

for(

int i=n;i>=1;

--i)

rpp(i,n)

printf

("%.2f\n"

,ans[i]);

cout

return0;

}

//全主元消除法

// 和列主元相比只改了(1),然後加乙個找pos的就行

int n;

int pos[

111]

;//i列為第pos[i]項

double a[

111]

[111

],ans[

111]

;signed

main()

if(!a[i]

[i])

//(2)將該行主元係數置為1

double tmp=a[i]

[i];

rpp(j,n+

1) a[i]

[j]/

=tmp;

//(3)將該行以下的該項係數全部變成0

for(

int j=i+

1;j<=n;

++j)

}//(4)回代

for(

int i=n;i>=1;

--i)

map<

int,

int>mp;

rpp(i,n) mp[pos[i]

]=i;

//第i項在那一列

rpp(i,n)

printf

("%.2f\n"

,ans[mp[i]])

; cout

}

//列主元高斯--約當消元(精度最高的(相對地)

//缺點:只能判斷是否有唯一解,無法判斷究竟是無解還是無數解。

// 1.選擇乙個尚未被選過的未知數作為主元,選擇包含這個主元的方程。

// 2.將這個方程主元的係數化為1。

// 3.通過加減消元,消掉其它方程中的這個未知數。

// 4.重複以上步驟,直到把所有式子變成形如: a1+b0+c*0……=d

double a[

111]

[111];

signed

main()

//(2)將其他行中的該項消除

rpp(j,n)

// rpp(_,n)

// // cout<}

//(3)輸出最終結果

rpp(i,n)

printf

("%.2f\n"

,a[i]

[n+1

]/a[i]

[i])

; stop;

return0;

}

高斯 約當(Gauss Jordan)消元法

選主元的高斯 約當 gauss jordan 消元法在很多地方都會用到,例如求乙個矩陣的逆矩陣 解線性方程組 插一句 lm演算法求解的乙個步驟 等等。它的速度不是最快的,但是它非常穩定 來自網上的定義 乙個計算方法,如果在使用此方法的計算過程中,捨入誤差得到控制,對計算結果影響較小,稱此方法為數值穩...

列主元的高斯消元法(FORTRAN)

program guass1 real,dimension allocatable arr real,dimension allocatable x real a integer i,j,k,n 輸入 輸出數列 write 請輸入需要計算的係數矩陣的大小n read n allocate arr n...

高斯 約當消元法(隨機程式,UVA 10828)

就是有一類題目 就是給你乙個圖,和乙個起始點 可以很抽象,比如uva 11762需要你自己建模。也可以很具體,比如就是乙個網格 然後每個節點都有一定概率轉移到另一些節點。具體解法就是 如果是有向無環圖就用動態規劃或者記憶化搜尋。否則就是高斯消元。本題就是高斯消元。然後如果使用高斯 約當消元法就可以省...