C언어/예제

[C] 행렬을 회전시키는 프로그램

thpop 2024. 11. 10. 17:14
반응형

오늘은 사용자로부터 16개의 숫자를 입력받으면, 4x4형태의 행렬과, 그 행렬을 90도 회전시킨 행렬을 출력하는 프로그램을 만들어볼 것이다.

 

출력 예시는 아래와 같다.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
4x4 행렬:
1 2 3 4 
5 6 7 8 
9 10 11 12 
13 14 15 16 

회전 행렬:
13 9 5 1 
14 10 6 2 
15 11 7 3 
16 12 8 4

 

 

프로그램은 아래와 같다.

#include <stdio.h>

int main()
{
	int A[4][4];
	int A90[4][4];
	for (int i = 0; i < 4; i++) {
		for (int j = 0; j < 4; j++) {
			scanf("%d", &A[i][j]);
		}
	}
	printf("\n4x4 행렬:\n");
		for (int i = 0; i < 4; i++) {
			for (int j = 0; j < 4; j++) {
				printf("%d ", A[i][j]);
			}
			printf("\n");
		}
	for (int i = 0; i < 4; i++) {
		for (int j = 0; j < 4; j++) {
			A90[j][3 - i] = A[i][j];
		}
	}
	printf("\n회전 행렬:\n");
		for (int i = 0; i < 4; i++) {
			for (int j = 0; j < 4; j++) {
				printf("%d ", A90[i][j]);
			}
			printf("\n");
		}
	return 0;
}
반응형