티스토리 뷰

반응형




이번 포스팅은 백준 알고리즘 사이트의 2439번 별찍기-2 문제를 C 언어로 코딩해보겠습니다. 아래 url로 접속하시면 문제를 볼 수 있습니다.


https://www.acmicpc.net/problem/2439


지난 백준 알고리즘 포스팅과 같은 단계로 for문 사용해보기 단계의 문제입니다.



이 문제의 경우 사용자로부터 N을 입력 받고, 입력 받은 만큼의 행이 생기고, 공백을 포함하여 별로 삼각형을 만드는 문제입니다.


문제에서 생각해 볼 것은 먼저 어떻게 나누어서 코딩을 해 볼 것인가, 어떻게 나누어 몇개의 for문을 어떻게 사용할 것인가를 생각해보시면 도움이 될 것 같습니다.


1
2
3
4
5
6
7
8
9
10
11
12
#include <stdio.h>
void main(){
    int input, i, j;
    scanf("%d"&input);
    for(i = 1; i <= input; i++){
        for (j = 1; j <= (input-i); j++)
            printf(" ");
        for (j = 1; j <= i; j++)
            printf("*");
        printf("\n");
    }
}
cs


먼저 input으로 사용자의 입력을 받고, for문에서 사용할 변수로 i와 j를 이용하였습니다.


큰 for문에서 i를 1부터 input값까지 i를 1씩 증가시킵니다. 이 for문의 역할은 input값까지 행을 만들어 줍니다.


큰 for문 내 첫 for문은 1부터 input-i 값까지 j를 증가시켜 공백을 만들어주고, 다음 for문은 j를 1부터 i값까지 증가시켜 *을 출력해줍니다.


마지막으로 큰 for문 내 printf를 통해 개행을 시켜주는 코드로 끝이 납니다.



다음 포스팅에서는 다음 단계의 코드를 보도록 하겠습니다.


다음 포스팅에서 봐요 :))

반응형
반응형
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2025/04   »
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
글 보관함