NETWORK & SEVER FACTORY

개인 공부 기록

동아리/EMOTION

입력받은 수만큼 달팽이 배열 출력

1nfra 2018. 5. 3. 08:20
728x90
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
#include <stdio.h>
int main() {
    int a, sum=1, arr[25][25], cnt, m;
    int x = -1, y = 0;
    scanf("%d"&a);
    m = a;
    cnt = a / 2;
    while (1) {
        for (int i = 0; i < a; i++) {
            x += 1;
            arr[y][x] = sum++;
        }
        for (int i = 0; i < a - 1; i++) {
            y += 1;
            arr[y][x] = sum++;
        }
        for (int i = 0; i < a - 1; i++) {
            x -= 1;
            arr[y][x] = sum++;
        }
        for (int i = 0; i < a - 2; i++) {
            y -= 1;
            arr[y][x] = sum++;
        }
        a -= 2;
        cnt--
        if (cnt == 0break;
    }
    if (m % 2 == 1)
        arr[m / 2][m / 2= sum;
    for (int i = 0; i < m; i++) {
        for (int j = 0; j < m; j++) {
            printf("%3d", arr[i][j]);
        }
        printf("\n");
    }
}
cs
728x90

'동아리 > EMOTION' 카테고리의 다른 글

재귀함수를 이용한 피보나치 수열  (0) 2018.05.03
별찍기~  (0) 2018.04.02