青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

Tauruser

Enjoy Every Day
posts - 34, comments - 95, trackbacks - 0, articles - 5
  C++博客 :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理

Gauss消去法直接求解方程組(附例程)

Posted on 2006-06-04 20:22 Tauruser 閱讀(3984) 評論(7)  編輯 收藏 引用 所屬分類: 數值計算

3.2 Gauss消去法

3.2.1 順序消去法

  Gauss消去法就是將方程組(3.1.1)通過(n-1)步消元,將(3.1.1)轉化為上三角方程組
       (3.2.1)
再回代求此方程組的解.
  下面記增廣矩陣,即
   
  第1步 設,計算l,記為,若用第一行加到第i行,可消去,用Gauss變換矩陣表示
    
令   
其中
  一般地,假定已完成了(k-1)步消元,即已將轉化為以下形式:
   
  第k步,假定,計算
       (3.2.2)
,則
   
其中
     (3.2.3).
當k=1,2,…,n-1則可得到,即方程組(3.2.1).

  直接回代解(3.2.1)得,
     (3.2.4)
并且有,由以上順序消去過程可得如下定理.
  定理2.1 設非奇異,則通過兩行互換總可使,k=1,2,…,n-1.可將方程組(3.1.1)轉化為(3.2.1)并求得方程組(3.1.1)的解為(3.2.4),且有.
  如果不做行交換,則使的條件如下.

  定理2.2 非奇異,且各階順序主子式, 則,k=1,2,…,n-1.
  證明 用歸納法,當,故.現假設(k-1)成立,即,對i=1,2,…,k-1已推出,故Gauss消去法能進行(k-1)步消元,A已約化為,即
   

     

對k=1,2,…,n均成立,證畢.
  在整個消去法消元過程中,k從1到(n-1)共需乘除法運算次數為
     
加減法次數為
     
回代過程中由公式(3.2.4)可知乘除法次數為,加減法次數為,于是Gauss消去法的乘除法總次數為,加減法次數為
  例3.4 用Gauss消去法解方程組
      
并求detA.
  解 消元得
   
再由(3.2.4)回代,得解

講解:

  Gauss 消去法是將方程組AX=b,通過消元轉化為上三角方程組(3,2,1)求解,消元第一步做完后有
         
  用矩陣表示
  第K-1步完成后得到
  當,可做K步,得到
  得到,對應的方程組就是(3.2.1),利用公式(3.2.4)就可求得解。
  定理2.2給出了進行順序消去法的條件,即A的所有順序生子式,而方程(3.1.1)解存在唯一的條件是

好了,原理講完了,貼我的例程。

#include? < iostream >
#include?
< vector >
#include?
< cmath >
using ? namespace ?std;
class ?CGAUSSSOLVEEQU
{
private :
????vector
< vector < double >> ?m_equset;
????vector
< double > ?m_answer;
????unsigned?
int ?m_n;
public :
????
void ?inputEquSet();
????
void ?solveEquSet();
????
void ?outputAnswer();
}
;
void ?CGAUSSSOLVEEQU::inputEquSet()
{
????
double ?dtemp;
????vector
< double > ?vtemp;
????cout
<< " 請輸入你的方程個數: " ;
????cin
>> m_n;
????cout
<< " 請按照向量的形式輸入各變量的系數。最后一位為b。每個方程一行: " << endl;
????
for (unsigned? int ?i( 0 );i < m_n; ++ i)
????
{
????????m_equset.push_back(vtemp);
????????
for (unsigned? int ?j( 0 );j <= m_n; ++ j)
????????
{????
????????????cin
>> dtemp;
????????????m_equset[i].push_back(dtemp);
????????}

????????
if (m_equset[i].size() != m_n + 1 )
????????
{
????????????cout
<< " 輸入有誤,請重新輸入上一個方程。 " << endl;
????????????
-- i;
????????}

????}

????
}


void ?CGAUSSSOLVEEQU::solveEquSet()
{
????vector
< vector < double >> ::iterator?iter;
????iter
= m_equset.begin();
????
for (unsigned? int ?m( 0 );m < m_n - 1 ; ++ m)
????
{
????????
// 將絕對值最大的主元素移上去。此舉是為了減少誤差
???????? for (vector < vector < double >> ::iterator?iter2 = iter + 1 ;iter2 != m_equset.end(); ++ iter2)
????????
{
????????????
if (fabsl(iter -> front()) < fabsl(iter2 -> front()))
????????????
{
????????????????swap(
* iter, * iter2);
????????????}

????????}

????????
// 進行消元
???????? for (unsigned? int ?i = m + 1 ;i < m_n; ++ i)
????????
{
????????????
double ?dm;
????????????dm
= m_equset[i][m] / m_equset[m][m];
????????????
for (unsigned? int ?j = m;j < m_n + 1 ; ++ j)
????????????
{
????????????????m_equset[i][j]
-= dm * m_equset[m][j];
????????????}

????????}

????????
++ iter;
????}

????
// 初始化m_answer向量
???? for (unsigned? int ?i( 0 );i < m_n; ++ i)?m_answer.push_back( 0 );
????
// 求解答案
????m_answer[m_n - 1 ] = m_equset[m_n - 1 ][m_n] / m_equset[m_n - 1 ][m_n - 1 ];

????
for ( int ?i = m_n - 2 ;i >= 0 ; -- i)
????
{
????????m_answer[i]
= m_equset[i][m_n];
????????
for ( int ?j = m_n - 1 ;j > i; -- j)
????????????m_answer[i]
-= m_answer[j] * m_equset[i][j];
????????m_answer[i]
/= m_equset[i][i];
????}


????
}


void ?CGAUSSSOLVEEQU::outputAnswer()
{
????
for (unsigned? int ?i( 1 );i <= m_n; ++ i)
????
{
????????cout
<< " x( " << i << " )= " << m_answer[i - 1 ] << endl;
????}

}


int ?main()
{
????CGAUSSSOLVEEQU?myEqu;
????myEqu.inputEquSet();
????myEqu.solveEquSet();
????myEqu.outputAnswer();
????
return ? 0 ;
}


// Power?By?Tauruser?2006.6.4

Feedback

# re: Gauss消去法直接求解方程組(附例程)  回復  更多評論   

2006-11-17 13:38 by tim
ding

# re: Gauss消去法直接求解方程組(附例程)  回復  更多評論   

2007-06-01 11:12 by Snowfox
請問LZ:
能發下具體的結果嗎?我不明白你的輸入格式,還有能解幾元幾次的方程組。謝謝了!勞駕!
期待中。。。

# re: Gauss消去法直接求解方程組(附例程)  回復  更多評論   

2007-06-10 12:02 by 星夢情緣
我的BLOG集齊了各重解線性方程的方法,任意方程都可以解的

# re: Gauss消去法直接求解方程組(附例程)  回復  更多評論   

2008-06-04 20:11 by
有一個小錯誤

# re: Gauss消去法直接求解方程組(附例程)  回復  更多評論   

2008-06-04 20:11 by
for ( int i = m_n - 2 ;i >= 0 ; -- i)

i 重復定義了,不過謝謝你呀!

# re: Gauss消去法直接求解方程組(附例程)  回復  更多評論   

2008-06-04 20:12 by
好程序

# re: Gauss消去法直接求解方程組(附例程)  回復  更多評論   

2009-03-25 22:06 by nan
能把改后的程序發上去嗎,謝謝

只有注冊用戶登錄后才能發表評論。
網站導航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            国产在线高清精品| 一区二区三区无毛| 在线亚洲一区二区| 亚洲精选在线| 欧美日韩在线亚洲一区蜜芽| 亚洲免费福利视频| 日韩天堂在线视频| 国产精品精品视频| 久久久久久国产精品mv| 久久精品在线播放| **网站欧美大片在线观看| 欧美高清成人| 欧美日韩三级电影在线| 欧美一区二区三区成人| 欧美一区二区三区日韩| 亚洲第一区在线| 亚洲三级免费| 欧美丝袜一区二区| 久久久久久久久久久久久9999| 久久久久九九视频| 夜夜狂射影院欧美极品| 亚洲免费伊人电影在线观看av| 国产一区二区剧情av在线| 免费在线观看成人av| 欧美精品一区二区三区蜜桃 | 欧美成人精品不卡视频在线观看| 亚洲欧洲精品一区| 亚洲一区在线播放| 亚洲国产精品999| 日韩午夜精品| 极品尤物久久久av免费看| 亚洲人成网站精品片在线观看| 国产精品乱看| 亚洲二区在线| 国产日韩欧美日韩| 亚洲人成毛片在线播放| 国产综合久久| 亚洲午夜免费视频| 亚洲精品国久久99热| 午夜精品视频一区| 日韩午夜精品| 久久尤物电影视频在线观看| 亚洲欧美国产高清va在线播| 免费亚洲一区二区| 久久精品一区二区三区中文字幕| 欧美日韩国产成人精品| 免费久久99精品国产自| 国产精自产拍久久久久久蜜| 亚洲精品欧美精品| 亚洲国产精品精华液网站| 欧美一区二区| 亚洲欧美日韩国产一区二区三区| 欧美激情aⅴ一区二区三区| 久久亚洲国产成人| 国产欧美视频一区二区三区| av成人免费在线| av成人免费观看| 免费高清在线一区| 美女视频黄 久久| 国产亚洲欧美一区| 午夜精品久久久久久久白皮肤| 一二三四社区欧美黄| 欧美成人一区二区三区在线观看| 另类天堂av| 精品av久久久久电影| 亚洲天堂av电影| 亚洲免费视频网站| 国产精品久久久久99| 99日韩精品| 亚洲欧美视频一区二区三区| 欧美日韩精品免费观看视频完整| 亚洲高清在线播放| 亚洲国产精彩中文乱码av在线播放| 久久国产手机看片| 久久理论片午夜琪琪电影网| 韩国女主播一区| 久久国产视频网| 男人插女人欧美| 亚洲精品免费网站| 欧美日韩视频第一区| 一本色道**综合亚洲精品蜜桃冫| 亚洲一区二区在线| 国产精品视频久久| 久久国产乱子精品免费女| 久久综合九色欧美综合狠狠| 亚洲成人在线网站| 欧美精品一区二区视频| 亚洲一区二区久久| 久久午夜精品| 亚洲激情电影在线| 欧美日韩一二区| 午夜精品久久一牛影视| 麻豆91精品| 99国产精品久久久久久久| 国产精品a久久久久| 欧美一区免费视频| 欧美国产亚洲视频| 亚洲午夜小视频| 国产一区视频观看| 麻豆九一精品爱看视频在线观看免费| 亚洲国产精品久久久久婷婷老年| 一区电影在线观看| 国产一区白浆| 欧美插天视频在线播放| 在线亚洲免费| 免费看的黄色欧美网站| 制服丝袜激情欧洲亚洲| 国产亚洲人成a一在线v站| 欧美成人精品一区二区三区| 亚洲色无码播放| 女主播福利一区| 性娇小13――14欧美| 亚洲国产第一| 国产精品一级| 欧美日韩1区2区| 久久精品免费播放| 宅男精品导航| 91久久久久久| 久久久亚洲影院你懂的| 在线综合亚洲欧美在线视频| 韩国亚洲精品| 国产精品永久入口久久久| 欧美激情aⅴ一区二区三区| 欧美专区福利在线| 一区二区三区高清| 亚洲国产成人一区| 久久午夜精品| 欧美亚洲视频| 亚洲女人小视频在线观看| 亚洲国产一区二区a毛片| 国产日韩亚洲欧美综合| 欧美性生交xxxxx久久久| 欧美第十八页| 久久夜色精品一区| 欧美一区二区三区视频在线| 在线亚洲自拍| 一区二区福利| 国产精品少妇自拍| 亚洲欧美偷拍卡通变态| 亚洲区一区二| 欧美国产精品va在线观看| 久久久精品2019中文字幕神马| 亚洲伊人色欲综合网| 亚洲美女中文字幕| 亚洲黄一区二区| 在线观看中文字幕不卡| 国产真实久久| 国产亚洲成年网址在线观看| 国产精品制服诱惑| 国产欧美日韩在线| 国产精品永久入口久久久| 欧美性大战久久久久久久蜜臀| 欧美日韩亚洲一区二区三区四区 | 亚洲免费电影在线| 亚洲人成在线观看网站高清| 亚洲国产成人久久| 亚洲久久视频| 一本色道久久综合亚洲精品按摩 | 亚洲精品美女在线观看| 亚洲国产婷婷| 日韩亚洲成人av在线| 99视频精品免费观看| 一区二区三区久久久| 亚洲婷婷综合久久一本伊一区| 亚洲一区日韩在线| 午夜激情综合网| 久久久久国产精品一区三寸| 可以免费看不卡的av网站| 欧美bbbxxxxx| 欧美日韩一区二| 国产区精品视频| 亚洲福利在线看| 中日韩午夜理伦电影免费| 午夜精品福利电影| 你懂的国产精品永久在线| 亚洲激情亚洲| 亚洲在线黄色| 老司机午夜免费精品视频| 欧美精品日韩三级| 国产日韩一区二区三区在线播放 | 国产一区二区三区奇米久涩| 影音先锋久久资源网| 夜夜嗨av一区二区三区 | 国产亚洲精品美女| 在线日韩欧美视频| 亚洲欧美电影院| 免费在线一区二区| 99日韩精品| 巨胸喷奶水www久久久免费动漫| 欧美日韩国产123| 韩日在线一区| 亚洲一区免费视频| 久久―日本道色综合久久| 最新热久久免费视频| 性久久久久久久| 欧美日韩一区二区三区在线看| 国产伦精品一区二区三区在线观看| 在线精品视频一区二区三四| 亚洲一区二区在线播放| 免费在线观看日韩欧美|