কম্পিউটার

C++ এ একটি ম্যাজিক স্কোয়ারের অনুপস্থিত এন্ট্রিগুলি পূরণ করুন


ধরুন আমাদের একটি 3x3 ম্যাট্রিক্স আছে, যার তির্যক উপাদানগুলি প্রথমে খালি। আমাদের তির্যকটি এমনভাবে পূরণ করতে হবে যাতে সারি, কলাম এবং কর্ণের যোগফল একই হয়। ধরুন একটি ম্যাট্রিক্স হল −

এর মত
0 3 6
5 0 5
4 7 0

পূরণ করার পরে, এটি হবে −

6 3 6
5 5 5
4 7 4

ধরুন তির্যক উপাদানগুলো হল x, y, z। মান হবে −

  • x =(M[2, 3] + M[3, 2])/ 2
  • z =(M[1, 2] + M[2, 1])/ 2
  • y =(x + z)/2

উদাহরণ

#include<iostream>
using namespace std;
void displayMatrix(int matrix[3][3]) {
   for (int i = 0; i < 3; i++) {
      for (int j = 0; j < 3; j++)
         cout << matrix[i][j] << " ";
         cout << endl;
   }
}
void fillDiagonal(int matrix[3][3]) {
   matrix[0][0] = (matrix[1][2] + matrix[2][1]) / 2;
   matrix[2][2] = (matrix[0][1] + matrix[1][0]) / 2;
   matrix[1][1] = (matrix[0][0] + matrix[2][2]) / 2;
   cout << "Final Matrix" << endl;
   displayMatrix(matrix);
}
int main() {
   int matrix[3][3] = {{ 0, 7, 6 },
   { 9, 0, 1 },
   { 4, 3, 0 }};
   cout << "Given Matrix" << endl;
   displayMatrix(matrix);
   fillDiagonal(matrix);
}

আউটপুট

Given Matrix
0 7 6
9 0 1
4 3 0
Final Matrix
2 7 6
9 5 1
4 3 8

  1. C++ এ একটি বর্গ ম্যাট্রিক্সে সর্বোচ্চ এবং সর্বনিম্ন

  2. C++ এ একটি তালিকায় অনুপস্থিত পারমুটেশন

  3. প্রদত্ত ম্যাট্রিক্সটি ম্যাজিক স্কোয়ার নাকি C++ এ নয় তা পরীক্ষা করুন

  4. C++ বুলিয়ান ম্যাট্রিক্স