इस ट्यूटोरियल में, हम सीखेंगे कि मैट्रिक्स के सारणिक का पता कैसे लगाया जाता है।
आइए मैट्रिक्स के सारणिक को खोजने के चरण देखें।
-
मैट्रिक्स को इनिशियलाइज़ करें।
-
मैट्रिक्स के निर्धारक को खोजने के लिए एक फ़ंक्शन लिखें।
-
यदि आव्यूह का आकार 1 या 2 है, तो आव्यूह का सारणिक ज्ञात कीजिए। सीधी सी बात है।
-
निर्धारक, सबमैट्रिक्स, साइन के लिए वैरिएबल प्रारंभ करें।
-
1 से मैट्रिक्स N के आकार में पुनरावृति करें।
-
वर्तमान मैट्रिक्स तत्व के लिए सबमैट्रिक्स खोजें।
-
वे सभी तत्व जो वर्तमान तत्व पंक्ति और स्तंभ में नहीं हैं
-
-
निर्धारक में वर्तमान तत्व और उसके सहकारक का गुणनफल जोड़ें।
-
चिह्न बदलें।
-
-
मैट्रिक्स के निर्धारक को प्रिंट करें।
उदाहरण
आइए कोड देखें।
#include <bits/stdc++.h>
using namespace std;
#define N 3
void subMatrix(int mat[N][N], int temp[N][N], int p, int q, int n) {
int i = 0, j = 0;
// filling the sub matrix
for (int row = 0; row < n; row++) {
for (int col = 0; col < n; col++) {
// skipping if the current row or column is not equal to the current
// element row and column
if (row != p && col != q) {
temp[i][j++] = mat[row][col];
if (j == n - 1) {
j = 0;
i++;
}
}
}
}
}
int determinantOfMatrix(int matrix[N][N], int n) {
int determinant = 0;
if (n == 1) {
return matrix[0][0];
}
if (n == 2) {
return (matrix[0][0] * matrix[1][1]) - (matrix[0][1] * matrix[1][0]);
}
int temp[N][N], sign = 1;
for (int i = 0; i < n; i++) {
subMatrix(matrix, temp, 0, i, n);
determinant += sign * matrix[0][i] * determinantOfMatrix(temp, n - 1);
sign = -sign;
}
return determinant;
}
int main() {
int mat[N][N] = {{2, 1, 3}, {6, 5, 7}, {4, 9, 8}};
cout << "Determinant: " << determinantOfMatrix(mat, N) << endl;
return 0;
} आउटपुट
यदि आप उपरोक्त प्रोग्राम को निष्पादित करते हैं, तो आपको निम्न परिणाम प्राप्त होंगे।
Determinant: 36
निष्कर्ष
यदि ट्यूटोरियल में आपके कोई प्रश्न हैं, तो उनका टिप्पणी अनुभाग में उल्लेख करें।