কম্পিউটার টিউটোরিয়াল

C++-এ দিয়ে যেকোনো ম্যাট্রিক্স ডায়াগোনাল ম্যাট্রিক্সে কনভার্ট করা

nxn আকারের একটি ম্যাট্রিক্স দেওয়া থাকলে, যেকোনো টাইপের ম্যাট্রিক্সকে ডায়াগোনাল ম্যাট্রিক্সে কনভার্ট করতে হবে।

ডায়াগোনাল ম্যাট্রিক্স কী?

ডায়াগোনাল ম্যাট্রিক্স হলো nxn ম্যাট্রিক্স যার সব নন-ডায়াগোনাল উপাদান শূন্য এবং ডায়াগোনাল উপাদানগুলো যেকোনো মান হতে পারে।

নন-ডায়াগোনাল উপাদানগুলো ০ করার চিত্র নিচে দেওয়া হলো:

$$\begin{bmatrix}1 & 2 & 3 \\4 & 5 & 6 \\7 & 8 & 9 \end{bmatrix}\:\rightarrow\:\begin{bmatrix}1 & 0 & 3 \\0 & 5 & 0 \\7 & 0 & 9 \end{bmatrix}$$

পদ্ধতিটি হলো: নন-ডায়াগোনাল উপাদানগুলো জন্য একটি লুপ এবং ডায়াগোনাল উপাদানগুলো জন্য আরেকটি লুপ চালিয়ে নন-ডায়াগোনালগুলোকে ০ করুন এবং ডায়াগোনালগুলো অপরিবর্তিত রাখুন।

উদাহরণ

Input: matrix[3][3] = {{ 1, 2, 3 }, { 4, 5, 6 }, { 7, 8, 9 }}
Output: {{ 1, 0, 3}, { 0, 5, 0}, { 7, 0, 9}}

Input: matrix[3][3] = {{ 91, 32, 23 }, { 40, 51, 26 }, { 72, 81, 93 }}
Output: {{ 91, 0, 23}, { 0, 51, 0}, { 72, 0, 93}}

আলগরিদম

Start
Step 1 -> define macro for matrix size as const int n = 10
Step 2 -> Declare function for converting to diagonal matrix
    void diagonal(int arr[][n], int a, int m)
    Loop For int i = 0 i < a i++
        Loop For int j = 0 j < m j++
            IF i != j & i + j + 1 != a
                Set arr[i][j] = 0
            End
        End
    End
    Loop For int i = 0 i < a i++
        Loop For int j = 0 j < m j++
            Print arr[i][j]
        End
        Print \n
    End
Step 2 -> In main()
    Declare matrix as int arr[][n] = { { 1, 2, 3 }, { 4, 5, 6 }, { 7, 8, 9 } }
    Call function as diagonal(arr, 3, 3)
Stop

C++ প্রোগ্রাম উদাহরণ

#include <iostream>
using namespace std;

const int n = 10;
//print 0 at diagonals in matrix of nxn
void diagonal(int arr[][n], int a, int m) {
    for (int i = 0; i < a; i++) {
        for (int j = 0; j < m; j++) {
            if (i != j && i + j + 1 != a)
                arr[i][j] = 0;
        }
    }
    for (int i = 0; i < a; i++) {
        for (int j = 0; j < m; j++) {
            cout << arr[i][j] << " ";
        }
        cout << endl;
    }
}

int main() {
    int arr[][n] = { { 1, 2, 3 },
                     { 4, 5, 6 },
                     { 7, 8, 9 } };
    diagonal(arr, 3, 3);
    return 0;
}

আউটপুট

0 2 0 4 0 6 0 8 0
  1. বাইনারি ম্যাট্রিক্স কে শূন্য ম্যাট্রিক্সে রূপান্তরের অপারেশন গণনা (C++ প্রোগ্রাম)

  2. C++-এ ইনভোলিউটরি ম্যাট্রিক্স যাচাই করার প্রোগ্রাম

  3. C++-এ ডায়াগোনাল এবং স্ক্যালার ম্যাট্রিক্স যাচাই করার প্রোগ্রাম

  4. C++ প্রোগ্রাম: অ্যাডজেসেন্সি ম্যাট্রিক্স বাস্তবায়ন