Programming_prob/Jungol
숫자사각형4
YongArtist
2016. 10. 26. 22:29
정사각형의 한 변의 길이 n과 종류 m을 입력받은 후 다음과 같은 정사각형 형태로 출력하는 프로그램을 작성하시오.
< 처리조건 >
종류 2번의 경우 숫자의 진행 순서는 처음에 왼쪽에서 오른쪽으로 너비 n만큼 진행 한 후 방향을 바꾸어서 이를 반복한다.
<소스코드>
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 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 | #include <stdio.h> void first(int a); void second(int b); void third(int c); int main() { int n = 0, m = 0; scanf("%d %d", &n, &m); if (m == 1) { first(n); } else if (m == 2) { second(n); } else { third(n); } return 0; } void first(int a) { int cnt = 0; for (int i = 1; i <= a; i++) { for (int j = 1; j <= a; j++) { printf("%d ", i); } printf("\n"); } } void second(int b) { for (int i = 1; i <= b; i++) { for (int j = 1; j <= b; j++) { if (i % 2 == 0) // i는 행을 나타내고, 짝수 번째 행을 출력하기 위한 조건. printf("%d ", (b +1)- j); // 첫 번째 값부터 출력하기 위해서 b+1 else printf("%d ", j); } printf("\n"); } } void third(int c) { int cnt = 1; for (int i = 1; i <= c; i++) { for (int j = 1; j <= c; j++) { cnt = i*j; // 이 부분에서 i의 값은 유지되고 j값이 변하므로 곱셈 연산을 함. printf("%d ", cnt); } printf("\n"); } } | cs |