একটি স্কোয়ার ম্যাট্রিক্সে (রো = কলাম) মেইন ডায়াগোনাল (i==j) এবং সেকেন্ডারি ডায়াগোনাল (i+j == n-1) এর এলিমেন্টগুলো ইন্টারচেঞ্জ করতে হবে। নন-স্কোয়ার ম্যাট্রিক্সের জন্য এরর মেসেজ।
লজিক
for (i = 0; i < m; ++i) {
a = ma[i][i];
ma[i][i] = ma[i][m-i-1];
ma[i][m-i-1] = a;
}
C কোড
#include <stdio.h>
int main() {
int ma[10][10], m, n, i, j, a;
printf("Enter order m x n: "); scanf("%dx%d", &m, &n);
if (m == n) {
// ইনপুট ম্যাট্রিক্স
// প্রিন্ট মূল ম্যাট্রিক্স
for (i = 0; i < m; ++i) {
a = ma[i][i];
ma[i][i] = ma[i][m-i-1];
ma[i][m-i-1] = a;
}
// প্রিন্ট পরিবর্তিত ম্যাট্রিক্স
} else {
printf("The given order is not square matrix\n");
}
return 0;
}
নমুনা আউটপুট
Input 3x3: 1 2 3 4 5 6 7 8 9 After swap: 3 2 1 4 5 6 9 8 7