Cho một mảng có kích thước nxn, chương trình phải in các phần tử của một mảng theo mô hình rắn mà không thực hiện bất kỳ thay đổi nào đối với vị trí ban đầu của chúng
Ví dụ
Input: arr[]= 100 99 98 97 93 94 95 96 92 91 90 89 85 86 87 88 Output: 100 99 98 97 96 95 94 93 92 91 90 89 88 87 86 85
Chương trình sẽ duyệt qua từng hàng của ma trận và kiểm tra các hàng chẵn hay lẻ.
-
Nếu hàng là số chẵn, nó sẽ in các phần tử của hàng đó từ trái sang phải
-
Nếu hàng là số lẻ, nó sẽ in các phần tử của hàng đó từ phải sang trái
Thuật toán
START Step 1 -> create header files for declaring rows and column let’s say of size 4x4 Step 2 -> declare initial variables i and j and array[][] with elements Step 3 -> Loop For i=0 and i<M and i++ IF i%2==0 Loop For j=0 and j<N and j++ Print arr[i][j] End End Else Loop For j=N-1 and j>=0 and j— Print arr[i][j] End End STOP
Ví dụ
#include<stdio.h> #define M 4 #define N 4 int main() { int i,j; int arr[M][N] = { { 100, 99, 98, 97 }, { 93, 94, 95, 96 }, { 92, 91, 90, 89 }, { 85, 86, 87, 88 } }; for (i = 0; i < M; i++) { //for rows if (i % 2 == 0) { for (j = 0; j < N; j++) // for column printf("%d ",arr[i][j]); } else{ for (j = N - 1; j >= 0; j--) printf("%d ",arr[i][j]); } } return 0; }
Đầu ra
nếu chúng ta chạy chương trình trên thì nó sẽ tạo ra kết quả sau
100 99 98 97 96 95 94 93 92 91 90 89 88 87 86 85