Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> การเขียนโปรแกรม C

พิมพ์เมทริกซ์ในรูปแบบแนวทแยง


กำหนดอาร์เรย์ 2 มิติของ n*n และภารกิจคือค้นหาการจัดเรียงแบบต้านสไปรัลของเมทริกซ์ที่กำหนด

Input : arr[4][4]={1,2,3,4,
   5,6,7,8,
   9,10,11,12
   13,14,15,16}
Output : 1 6 11 16 4 7 10 13

พิมพ์เมทริกซ์ในรูปแบบแนวทแยง

อัลกอริทึม

START
Step 1 -> declare start variables as r=4, c=4, i and j
Step 2 -> initialize array as mat[r][c] with elements
Step 3 -> Loop For i=0 and i<r and i++
   Print mat[i][j]
Step 4 -> print \n
Step 5 -> Loop For i=0 and i<r and i++
   Print mat[i][4-1-i]
End
STOP

ตัวอย่าง

#include<iostream>
#include <bits/stdc++.h>
using namespace std;
int main() {
   int R=4,C=4,i,j;
   int mat[R][C] = { {1,2,3, 4}, {5,6,7,8},{9,10,11,12},{13,14,15,16}};
   for(i=0;i<R;i++) {
      cout<<mat[i][i]<<" ";
   }
   cout<<"\n";
   for(i=0;i<R;i++) {
      cout<<mat[i][4-1-i]<<" ";
   }
}

ผลลัพธ์

หากเรารันโปรแกรมข้างต้น มันจะสร้างผลลัพธ์ดังต่อไปนี้

1 6 11 16
4 7 10 13