কম্পিউটার

C++ প্রোগ্রামে তির্যকভাবে প্রভাবশালী ম্যাট্রিক্স


এই টিউটোরিয়ালে, আমরা একটি প্রোগ্রাম লিখতে যাচ্ছি যেটি আমাদের খুঁজে বের করতে সাহায্য করে যে প্রদত্ত ম্যাট্রিক্সটি তির্যকভাবে প্রভাবশালী কিনা।

ম্যাট্রিক্সকে একটি তির্যক প্রভাবশালী ম্যাট্রিক্স বলা হয় যদি তির্যক মৌল ব্যতীত অন্য ম্যাট্রিক্সের উপাদানগুলির যোগফল তির্যক ম্যাট্রিক্সের চেয়ে কম হয়। আসুন একটি উদাহরণ দেখি।

421
352
247

উপরের ম্যাট্রিক্সটি একটি তির্যকভাবে প্রভাবশালী ম্যাট্রিক্স। কারণ

4 > 2 + 1
5 ≥ 3 + 2
7 > 4 + 2

সমস্ত তির্যক উপাদান একই সারিতে থাকা অ-তির্যক উপাদানগুলির সমষ্টির চেয়ে বড় বা সমান৷

আসুন সমস্যা সমাধানের পদক্ষেপগুলি দেখি৷

  • ম্যাট্রিক্সের সারি এবং কলামের উপর পুনরাবৃত্তি করুন।

    • অ-তির্যক উপাদানের সমষ্টি খুঁজুন।

    • তির্যক উপাদানের সাথে অ-তির্যক উপাদানের যোগফল তুলনা করুন।

    • যদি অ-তির্যক উপাদানের যোগফল তির্যক উপাদানের চেয়ে বেশি হয়, তাহলে "না" প্রিন্ট করুন।

  • "হ্যাঁ" প্রিন্ট করুন।

উদাহরণ

আসুন কোডটি দেখি।

#include <bits/stdc++.h>
using namespace std;
#define N 3
bool isDiagonallyDominantMatrix(int matrix[N][N], int n) {
   for (int i = 0; i < n; i++) {
      int sum = 0;
      for (int j = 0; j < n; j++) {
         if (i != j) {
            sum += abs(matrix[i][j]);
         }
      }
      if (abs(matrix[i][i]) < sum) {
         return false;
      }
   }
   return true;
}
int main() {
   // int matrix[N][N] = {{1, 2, 3}, {4, 5, 6}, {7, 8, 9}};
   int matrix[N][N] = {{4, 2, 1}, {3, 5, 2}, {2, 4, 7}};
   if (isDiagonallyDominantMatrix(matrix, 3)) {
      cout << "Yes" << endl;
   }
   else {
      cout << "No" << endl;
   }
return 0;
}

আউটপুট

আপনি যদি উপরের কোডটি চালান, তাহলে আপনি নিম্নলিখিত ফলাফল পাবেন।

Yes

উপসংহার

টিউটোরিয়ালে আপনার কোন প্রশ্ন থাকলে মন্তব্য বিভাগে উল্লেখ করুন।


  1. C++ এ ইনভোলুটরি ম্যাট্রিক্স চেক করার প্রোগ্রাম

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

  3. একটি ম্যাট্রিক্সের নির্ধারক গণনা করার জন্য C++ প্রোগ্রাম

  4. এটি একটি স্পার্স ম্যাট্রিক্স কিনা তা পরীক্ষা করার জন্য C++ প্রোগ্রাম