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

C++ प्रोग्राम: मैट्रिक्स का बेसिस और डायमेंशन खोजें


यह एक C++ प्रोग्राम है जो मैट्रिक्स का बेसिस (आधार) और डायमेंशन (आयाम) खोजता है।

एल्गोरिदम

Begin    Function determinant() :    यह मैट्रिक्स का डिटरमिनेंट (सारणिक) कैलकुलेट करता है।    /*       Arguments:       n = तत्वों की संख्या।       matrix[10][10] = इनपुट मैट्रिक्स।    */    सबमैट्रिक्स submatrix[10][10] डिक्लेयर करें।    //फंक्शन का बॉडी:    if (n == 2)       return ((matrix[0][0] * matrix[1][1]) - (matrix[1][0] * matrix[0][1]))    else       c = 0 से n-1 तक फॉर लूप बनाएं          submati = 0, submatj डिक्लेयर और इनिशियलाइज़ करें।          i = 1 से n-1 तक फॉर लूप बनाएं          subj = 0 इनिशियलाइज़ करें          i = 1 से n-1 तक फॉर लूप बनाएं             if (j == c)                continue             submatrix[submati][submatj] = matrix[i][j].             subj इन्क्रीमेंट करें।          submati इन्क्रीमेंट करें।       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); //फंक्शन कॉल करें    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. C++ में डायगोनल मैट्रिक्स और स्केलर मैट्रिक्स जांचें C++ में डायगोनल मैट्रिक्स और स्केलर मैट्रिक्स जांचें

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

  1. - C++ प्रोग्राम: GCD (महत्तम समापवर्तक) खोजें

    परिचयदो संख्याओं का महत्तम समापवर्तक (GCD) वह सबसे बड़ी संख्या है जो दोनों को विभाजित करती है। उदाहरण के लिए: मान लें हमारे पास दो संख्याएं हैं 45 और 27। 45 = 5 * 3 * 3 27 = 3 * 3 * 3 इसलिए, 45 और 27 का GCD 9 है। उदाहरण 1 (यूक्लिडियन एल्गोरिदम)#include <iostream> using namespace std; int gcd(

  1. - C++ प्रोग्राम: भागफल (Quotient) और शेषफल (Remainder) खोजें

    परिचयभागफल और शेषफल विभाजन के भाग हैं साथ ही लाभांश (dividend) और भाजक (divisor)। जिस संख्या को हम विभाजित करते हैं उसे लाभांश के रूप में जाना जाता है। जो संख्या लाभांश को विभाजित करती है उसे भाजक के रूप में जाना जाता है। विभाजन के बाद प्राप्त परिणाम को भागफल के रूप में जाना जाता है और बची हुई संख्य