Deteminant of a matrix 行列式值
#include <stdio.h>
#include <math.h>
#define N 3
int determinantOfMatrix(int mat[N][N], int n);
void display(int mat[N][N], int row, int col);
int main(void)
{
int matrix[N][N] =
{
{6, 1, 1 },
{4, -2, 5},
{2, 8, 7 }
};
display(matrix, N, N);
int determinant = determinantOfMatrix(matrix, N);
printf("Determinant of the matrix is: %d\n", determinant);
return 0;
}
int determinantOfMatrix(int mat[N][N], int n)
{
int det=0, p, h, k, i, j, temp[N][N];
if (n == 1)
{
return mat[0][0];
}
else if (n == 2)
{
det = (mat[0][0] * mat[1][1] - mat[0][1] * mat[1][0]);
return det;
}
else {
for (p = 0; p < n; p++) {
h = 0;
k = 0;
for (i = 1; i < n; i++) {
for (j = 0; j < n; j++) {
if (j==p) {
continue;
}
temp[h][k] = mat[i][j];
k++;
if (k == n-1) {
h++;
k = 0;
}
}
}
det = det + mat[0][p] * pow(-1, p) * determinantOfMatrix(temp, n-1);
}
return det;
}
}
void display(int mat[N][N], int row, int col)
{
int i;
int j;
for (i = 0; i < row; i++)
{
for (j = 0; j < col; j++)
{
printf("%d\t", mat[i][j]);
}
printf("\n");
}
}
輸出畫面
6 1 1
4 -2 5
2 8 7
Determinant of the matrix is: -306
訂閱:
張貼留言 (Atom)
Messaging API作為替代方案
LINE超好用功能要沒了!LINE Notify明年3月底終止服務,有什麼替代方案? LINE Notify將於2025年3月31日結束服務,官方建議改用Messaging API作為替代方案。 //CHANNEL_ACCESS_TOKEN = 'Messaging ...
-
python pip 不是内部或外部命令 -- 解決方法 要安裝 Pyqt5 1. 首先,開啟命令提示字元。 2. 輸入 pip3 install pyqt5 好像不能執行 ! ! 錯誤顯示 : ‘ pip3 ’ 不是內部或外部命令、可執行的程式或批...
-
課程講義 下載 11/20 1) PPT 下載 + 程式下載 http://www.mediafire.com/file/cru4py7e8pptfda/106%E5%8B%A4%E7%9B%8A2-1.rar 11/27 2) PPT 下載...
-
• 認 識 PreFix、InFix、PostFix PreFix(前序式):* + 1 2 + 3 4 InFix(中序式): (1+2)*(3+4) PostFix(後序式):1 2 + 3 4 + * 後 序式的運算 例如: 運算時由 後序式的...
沒有留言:
張貼留言