[C언어 코드업 문제풀이] CodeUp 1677 : 종이 만들기

코드업 1677번 종이 만들기 문제 풀이 해답입니다.

 

1. 문제 설명

 

n*m 종이를 만들려고 한다.

가로 길이와 세로 길이가 주어지면 다음과 같은 종이를 출력하시오.

예를 들어) 4 * 3의 종이라면

 

+--+

|     |

+--+

이와 같이 출력한다.

 

2. 입력

 

가로길이 n과 세로길이 m이 공백으로 분리되어 입력된다.(2 <= n, m <= 50)

 

3. 출력

 

n*m 크기의 종이를 출력한다.

 

4. 입력 예시

 

4 3

 

5. 출력 예시

 

+--+

|     |

+--+

 

6. 문제 풀이

 

#include<stdio.h>
 
 
int main(){
    
    int n,m;
    scanf("%d %d",&n,&m);
 
    for(int i = 1; i <= m;i++){
        for(int j = 1; j <=n; j++){
            if( (i == 1 || i == m) && (j == 1 || j == n) ){
                printf("+");
            }
            else if(i == 1 || i == m ){
                printf("-");
            }
            else if(j == 1 || j == n){
                printf("|");
            }
            else{
                printf(" ");
            }
    
        }
     printf("\n");
        
    }
 
    
    return 0;
}
 

 

 if( (i == 1 || i == m) && (j == 1 || j == n) ) -> 각 모서리마다 +를 출력한다.

else if(i == 1 || i == m ) -> i(열)이 1또는 열의 끝일때 -를 출력한다.

else if(j == 1 || j == n) -> j(행)이 1또는 행의 끝일때 | 를 출력한다.

 

댓글()