1樓:a萬事通
|||||||||||||||||||||||||||||||||||||
||| a1x+b1y+c1z=d1
||| a2x+b2y+c2z=d2
||| a3x+b3y+c3z=d3
|||||||||||||||||||||||||||||||||||||
一 a1a2x+b1a2y+c1a2y=d1a2 a式
a1a2x+b2a1y+c2a1z=d2a1 b式
a-b得
(b1a2-b2a1)y+(c1a2-c2a1)z=(d1a2-d2a1) c式
如果b1a2-b2a1=0或c1a2-c2a1=0則存在無窮多組解
二 a3a2x+b3a2y+c3a2y=d3a2 d式
a3a2x+b2a3y+c2a3z=d2a3 e式
d-e得
(b3a2-b2a3)y+(c3a2-c2a3)z=(d3a2-d2a3) f式
如果b3a2-b2a3=0或c3a2-c2a3=0則存在無窮多組解
求 c和f式組成的二元一次方程組
接著。。。。。。。。。。難道你還想不出來嗎 呵呵
2樓:匿名使用者
用三重迴圈就好了,但是關鍵是你要大概知道你的答案的精度,即在小數點後面多少位
用高斯消元法解三元一次方程組,c語言
3樓:耘熵
參閱我的文章
#include "stdafx.h" //vs 預編譯標頭檔案,其他系統請刪除
#include
#include
#include
#include
#include
//vs 2013 否決了 scanf 等函式,為了使用,加上下句。
//其他系統請刪除
#pragma warning(disable:4996)
int gaussjordanelimination(int n, const double *pcoef, double *pout);
//vs 主函式簽名格式。其他系統請改變簽名,如:
//int main()
int _tmain(int argc, _tchar* ar**)
, , };
double rs[3];
int i;
i = gaussjordanelimination(3, (double*)cf, rs);
printf("x1 = %lf, x2 = %lf, x3 = %lf\n", rs[0], rs[1], rs[2]);
system("pause"); //避免視窗一閃而退
return 0;
}//絕對值函式
__inline double _abs(double v)
//線性方程組列主元高斯消元法
//n 方程元數;pcoef 係數,必須以行主序方式存放的二維陣列;
//pout 長度為 n 的一維陣列(呼叫者負責維護),用於輸出資料
//返回值:0 成功,-1 無解,1 申請記憶體失敗, 2 不定解。
int gaussjordanelimination(int n, const double *pcoef, double *pout)
if (a > r)
}//開始消元
a = r * columns; //記住將主元的行地址偏移量,以提高程式執行效率
x = -pcf[a + r]; //要多次使用,記下她,以提高程式執行效率
if (x == 0) //主元居然為 0,純粹是想坑爹,豈能上當!
continue; //繼續後面的消元,以便最終判斷是無解還是任意解
for (i = r + 1; i < rows; i++)
}}//至此,pcf 方陣區已經處理成到直角三角形(直角在右上角)矩陣
//回代,將 pcf 方陣區處理成主對角線為 1,其他為 0 的矩陣
int columns_1 = c = columns - 1; //多次用到,提高效率
for (r = rows - 1; r >= 1; r--)
else
}pcf[b + columns_1] /= pcf[b + r];
pcf[b + r] = 1; //肯定為 1,不用計算。
y = -pcf[b + columns_1];
//回代
for (i = r - 1; i >= 0; i--)
}//處理第一行資料
pcf[columns_1] /= pcf[0];
pcf[0] = 1;
//至此,回代過程結束,pcf 矩陣的最後一列就是結果
//返回結果
for (r = 0; r < rows; r++)
pout[r] = pcf[r * columns + columns_1];
free(pcf);
return 0;}
三元一次方程組,三元一次方程組怎麼解?
設上坡x千公尺,平路y千公尺,下坡z千公尺 則x y z 3.3 1 x 3 y 4 z 5 51 60 x 5 y 4 z 3 53.4 60 所以20x 15y 12z 51 2 12x 15y 20z 53.4 3 2 3 8x 8z 2.4 x z 0.3 4 1 15 3 3x 5z 3....
三元一次方程組解法,怎樣解三元一次方程組
y 2x 7 1 5x 3y 2z 2 2 3x 4z 4 3 1 式變形為 2x y 7 4 2 2 得 10x 6y 4z 4 5 3 5 得 13x 6y 8 6 4 6 得 12x 6y 42 7 6 7 消去y得 25x 50 x 2代入 4 得 y 3 代入 3 得 z 1 2 綜上 x...
三元一次方程組一般有幾個解,三元一次方程組一共有多少個解
有的只有乙個解,比如這個三元一次方程組 x y z 22 3x y 0z 47 x 4z 2 解得x 14,y 5,z 3,這樣的方程只有乙個解。有的有無數個解,這種方程就是三元一次不定方程,即方程的數量小於3。比如x y z 6 2x 4 y z 20 解得x 2,當y 0時,z 4 y 1時,z...