반응형
지난 포스팅에 이어 오늘도 별 찍기 문제를 다뤄보려합니다. 위와 같은 모양이 되도록 출력시켜야합니다.
이전 별 문제까지는 별이 먼저 출력 되기 때문에 변수를 2개만가지고 구현이 가능하였습니다.
하지만 공백 출력이 별보다 먼저 되는 경우가 발생하기에 blank라는 변수를 하나 더 생성하여 관리하려합니다.
2중 for문의 핵심 체크사항은 아래와 같습니다.
1. for문에 사용할 변수의 역할 및 범위 확인.
2. 각 변수들의 관계를 파악하여 문제에 적용하기.
아래 글을 한번 읽어 보시면 더욱 도움이 됩니다.
반응형
2023.01.04 - [분류 전체보기] - [c언어] 2중 for문
문제를 확인해보면 라인은 총 5개 라인입니다. 별 모양은 5->1로 감소 됩니다. 공백은 0->4로 증가합니다.
구현 방법은 아래 코드를 참고 바랍니다.
#include <stdio.h>
void main(void)
{
int line; // 라인 관련 변수
int blank; // 공백 관련 변수
int star; // 별 출력 관련 변수
for (line = 0; line < 5; line++) // 총 5개 줄이며, 1줄씩 이동을 담당한다
{
for (blank = 0; blank < line; blank++) // 별보다 공백이 먼저 출력 되어야한다.
{ // 라인 수와 공백의 개수가 동일하다.
printf(" ");
}
for (star = 0; star < 5 - blank; star++) // 각 라인에서 공백의 개수를 뺀만큼만 출력한다.
{
printf("*");
}
printf("\n");
}
}
오늘은 2중 for문에서 3개의 변수를 다뤄 원하는 형태를 얻어내는 문제를 같이 확인했습니다.
다음 포스팅으로 찾아뵙겠습니다.
반응형
'알고리즘' 카테고리의 다른 글
[c 알고리즘] 1169 정올 주사위 던지기 1 문제 해설 (0) | 2023.01.11 |
---|---|
[c 알고리즘] DFS(Depth First Search)란 무엇인가? (0) | 2023.01.11 |
[c 알고리즘] 백준 별찍기 5 (2442번) (2) | 2023.01.07 |
[c언어 알고리즘] 백준 별찍기3 (2440번) 해설 (0) | 2023.01.06 |
[c 알고리즘] 백준 7576 토마토 문제 해설 (2) | 2023.01.05 |