Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> C++

मैट्रिक्स का आधार और आयाम खोजने के लिए C++ प्रोग्राम

मैट्रिक्स के आधार और आयाम को खोजने के लिए यह एक C++ प्रोग्राम है।

एल्गोरिदम

Begin
   Function determinant() :
   It calculates determinant of the matrix.
   /*
      Arguments:
      n = number of elements.
      matrix[10][10] = input matrix.
   */
   declare the submatrix submatrix[10][10].
   //Body of the function:
   if (n == 2)
      return ((matrix[0][0] * matrix[1][1]) - (matrix[1][0] * matrix[0][1]))
   else
      Make a for loop c = 0 to n-1
         Declare and initialize submati = 0, submatj.
         Make a For loop i = 1 to n-1
         initialize subj = 0
         Make a For loop i = 1 to n-1
            if (j == c)
               continue
            submatrix[submati][submatj] = matrix[i][j].
            Increment subj.
         increment submati.
      Compute d = d + (pow(-1, c) * matrix[0][c] * determinant(n- 1, submatrix)).
End

उदाहरण

#include<iostream>
#include<math.h>
using namespace std;
double d = 0;
double determinant(int n, double matrix[10][10]) {
   double submatrix[10][10];
   if (n == 2)
      return ((matrix[0][0] * matrix[1][1]) - (matrix[1][0] *
      matrix[0][1]));
   else {
      for (int c = 0; c < n; c++) {
         int submati = 0,submatj;
         for (int i = 1; i < n; i++) {
            int subj = 0;
            for (int j = 0; j < n; j++) {
               if (j == c)
                  continue;
               submatrix[submati][submatj] = matrix[i][j];
               subj++;
            }
            submati++;
         }
         d = d + (pow(-1, c) * matrix[0][c] * determinant(n -
         1, submatrix));
      }
   }
   return d;
}
int main(int argc, char **argv) {
   cout << "Enter the number of elements:\n";
   int n;
   cin >> n;
   double matrix[10][10];
   cout << "Enter elements one by one:\n";
   for (int i = 0; i < n; i++) {
      for (int j = 0; j < n; j++) {
         cin >> matrix[j][i];
      }
   }
   d = determinant(n, matrix); //call the function
   if (d != 0)
      cout << "The elements form the basis of R" << n << " as the determinant is non-zero";
   else
      cout << "The elements don't form the basis of R" << n << " as the determinant is zero";
}

आउटपुट - 1

Enter the number of elements:
3 Enter elements one by one:
7 6 1
2 3 4
5 8 9
The elements form the basis of R3 as the determinant is
non-zero

आउटपुट - 2

Enter the number of elements:
4 Enter the elements one by one:
7 6 1 4
2 3 5 4
9 8 2 3
2 1 3 0
The elements don't form the basis of R4 as the
determinant is zero

  1. सी ++ में विकर्ण मैट्रिक्स और स्केलर मैट्रिक्स की जांच करने का कार्यक्रम

    मैट्रिक्स M[r][c] दिया गया है, r पंक्तियों की संख्या को दर्शाता है और c कॉलम की संख्या को इस तरह दर्शाता है कि r =c एक वर्ग मैट्रिक्स बनाता है। हमें ज्ञात करना है कि दिया गया वर्ग आव्यूह विकर्ण . है या नहीं और स्केलर मैट्रिक्स या नहीं, अगर यह विकर्ण . है और स्केलर मैट्रिक्स फिर परिणाम में हाँ प्

  1. सी ++ प्रोग्राम जीसीडी खोजने के लिए

    दो संख्याओं का सबसे बड़ा सामान्य भाजक (GCD) उन दोनों को विभाजित करने वाली सबसे बड़ी संख्या है। उदाहरण के लिए:मान लें कि हमारे पास 45 और 27 दो संख्याएँ हैं। 45 = 5 * 3 * 3 27 = 3 * 3 * 3 तो, 45 और 27 का GCD 9 है। दो संख्याओं का GCD ज्ञात करने का कार्यक्रम इस प्रकार दिया गया है। उदाहरण #include <

  1. C++ प्रोग्राम भागफल और शेष खोजने के लिए

    भागफल और शेष भाग लाभांश और भाजक के साथ विभाजन के भाग हैं। जिस संख्या को हम विभाजित करते हैं उसे लाभांश के रूप में जाना जाता है। भाज्य को विभाजित करने वाली संख्या भाजक कहलाती है। भाग के बाद प्राप्त परिणाम भागफल के रूप में जाना जाता है और शेष संख्या शेषफल होती है। dividend = divisor * quotient + rema