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

C++-এ দেওয়া ম্যাট্রিক্স ম্যাজিক স্কোয়ার কিনা তা যাচাই করা


এখানে আমরা দেখব একটি ম্যাট্রিক্স ম্যাজিক স্কোয়ার কিনা তা যাচাই করা। ম্যাজিক স্কোয়ার হলো একটি স্কোয়ার ম্যাট্রিক্স, যেখানে প্রতিটি সারি, প্রতিটি কলাম, এবং প্রতিটি ডায়াগনালের যোগফল একই থাকে।

ধরুন একটি ম্যাট্রিক্স নিচের মত:

618
753
294

এটি একটি ম্যাজিক স্কোয়ার, কারণ প্রতিটি সারি, কলাম এবং ডায়াগনালের যোগফল ১৫।

একটি ম্যাট্রিক্স ম্যাজিক স্কোয়ার কিনা তা যাচাই করতে প্রধান ডায়াগনাল এবং সেকেন্ডারি ডায়াগনালের যোগফল বের করতে হবে। যদি তারা সমান হয়, তবে সেটি ম্যাজিক স্কোয়ার, অন্যথায় নয়।

উদাহরণ

#include <iostream> #define N 3 using namespace std; bool isMagicSquare(int mat[][N]) {    int sum_diag = 0,sum_diag_second=0;    for (int i = 0; i < N; i++)       sum_diag = sum_diag + mat[i][i];    for (int i = 0; i < N; i++)       sum_diag_second = sum_diag_second + mat[i][N-1-i];    if(sum_diag!=sum_diag_second)       return false;    for (int i = 0; i < N; i++) {       int rowSum = 0;       for (int j = 0; j < N; j++)          rowSum += mat[i][j];       if (rowSum != sum_diag)          return false;    }    for (int i = 0; i < N; i++) {       int colSum = 0;       for (int j = 0; j < N; j++)          colSum += mat[j][i];       if (sum_diag != colSum)       return false;    }    return true; } int main() {    int mat[][N] = {{ 6, 1, 8 },    { 7, 5, 3 },    { 2, 9, 4 }};    if (isMagicSquare(mat))       cout << "It is Magic Square";    else    cout << "It is Not a magic Square"; }

আউটপুট

It is Magic Square

  1. C++-এ একটি ট্রি গ্রাফ লিনিয়ার কিনা তা যাচাই করা

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

  3. C++-এ আইডেমপটেন্ট ম্যাট্রিক্স যাচাই করার প্রোগ্রাম

  4. সি++ প্রোগ্রাম: দেওয়া গ্রাফে হ্যামিল্টোনিয়ান সাইকেল থাকতে হবে কিনা চেক করা