এখানে আমরা দেখব কিভাবে একটি প্রদত্ত ম্যাট্রিক্সের দুটি কর্ণের যোগফলের মধ্যে পার্থক্য পাওয়া যায়। ধরুন আমাদের কাছে N x N ক্রমের একটি ম্যাট্রিক্স আছে, আমাদের প্রাথমিক এবং মাধ্যমিক কর্ণের যোগফল পেতে হবে, তারপর তাদের পার্থক্য পেতে হবে। প্রধান তির্যক পেতে, আমরা জানি যে সারি সূচক এবং কলাম সূচক একই সাথে বৃদ্ধি পায়। দ্বিতীয় তির্যকের জন্য, সারি সূচক এবং কলাম সূচকের মান এই সূত্র দ্বারা বৃদ্ধি করা হয় row_index =n – 1 – col_index। যোগফল পাওয়ার পর, পার্থক্য নিন এবং একটি ফলাফল ফেরত দিন।
উদাহরণ
#include<iostream> #include<cmath> #define MAX 100 using namespace std; int diagonalSumDifference(int matrix[][MAX], int n) { int sum1 = 0, sum2 = 0; for (int i = 0; i < n; i++) { sum1 += matrix[i][i]; sum2 += matrix[i][n-i-1]; } return abs(sum1 - sum2); } // Driven Program int main() { int n = 3; int matrix[][MAX] = { {11, 2, 4}, {4 , 5, 6}, {10, 8, -12} }; cout << "Difference of the sum of two diagonals: " << diagonalSumDifference(matrix, n); }
আউটপুট
Difference of the sum of two diagonals: 15