반응형
이번 시간에는 반복문을 통한 별 찍기를 해볼 것이다. 처음에 혼자 시도했을 때 어려웠으나 강의 영상을 보면서 반복문에 대한 이해를 바탕으로 연습을 하니 이제 완벽하게 이해를 했다.
1. 왼쪽정렬 별찍기(5층)
*
**
***
****
*****
와 같은 형태로 별찍기를 먼저 해보겠다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
#include <stdio.h>
int main(void)
{
for (int i = 0; i < 5; i++)
{
for (int j = 0; j <= i; j++)
{
printf("*");
}
printf("\n");
}
return 0;
}
|
cs |
*
**
***
****
*****
앞선 시간에 했던 이중 반복문으로 *과 \n을 통해 왼쪽정렬되어 순차적으로 늘어나는 5층짜리 별탑을 만들었다.
2. 오른쪽정렬 별찍기(5층)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
|
#include <stdio.h>
int main(void)
{
for (int i = 0; i < 5; i++)
{
for (int j = i; j < 5 - 1; j++)
{
printf(" ");
}
for (int k = 0; k <= i; k++)
{
printf("*");
}
printf("\n");
}
return 0;
}
|
cs |
*
**
***
****
*****
i는 층수, j는 빈공간 " ", k는 *에 대한 변수로 오른쪽 정렬된 별찍기를 성공하였다.
3. 가운데정렬 별찍기(피라미드 쌓기 프로젝트)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
|
#include <stdio.h>
int main(void)
{
int floor;
printf("몇 층까지 쌓을거야?");
scanf_s("%d", &floor);
for (int i = 0; i < floor; i++)
{
for (int j = 0; j = floor - i; j++)
{
printf(" ");
}
for (int k = 0; k < i * 2 + 1; k++)
{
printf("*");
}
printf("\n");
}
return 0;
}
|
cs |
몇 층으로 쌓겠느냐? 라는 문구에 15를 입력하니 floor에 15가 대입되어 총 15층의 피라미드 완성
오늘은 코딩을 입문했을 때 기본 중의 기본이라고 말하는 별찍기를 공부했다. 기본인 별찍기조차 강의를 안보고 혼자했을 때 어려움을 느끼는 모습을 보니 아직 공부가 한참 부족하다 생각한다. 당장이라도 회사를 그만두고 학원이나 부트캠프에 가서 공부에 매진을 하고 싶으나 금전적인 여유가 없기에 최대한 남는 시간을 활용하여 공부를 더 열심히 해보려 한다. 모든 취업 준비생, 이직 준비생들 화이팅이다!
반응형
'Java' 카테고리의 다른 글
[Java] nextInt()와 nextLine()의 차이점 (0) | 2023.03.15 |
---|---|
[C] 가위바위보 게임 (0) | 2022.11.28 |
[C] 반복문을 통한 구구단 만들기 (0) | 2022.11.27 |
[C] 경찰 조서 작성 프로젝트 (0) | 2022.11.27 |
[JAVA] 상수의 데이터 타입 (1) | 2022.11.06 |