Quiz
int main()
{
int i = 0;
while(++i <= 10)
{
if(i % 3 == 0)
continue;
printf("%d ", i); //여기
}
printf("\\n");
i = 0;
while(i <= 10)
{
++i;
if(i % 3 == 0)
continue;
printf("%d ", i); //여기
}
printf("\\n");
i = 0;
while(i <= 10)
{
if(i % 3 == 0)
continue;
printf("%d ", ++i); //여기
}
printf("\\n");
i = 0;
while(i <= 10)
{
if(i % 3 == 0)
continue;
printf("%d ", i); //여기
i++;
}
return 0;
}
Problem 1


코딩하기 전에 생각을 먼저 해봅시다.
- 문제를 작은 단위로 분할해 보세요.
- 수학적 규칙성을 찾아보세요.
- 1과 2를 반복해 보세요.
- 입력받은 숫자와 출력 사이에 어떤 규칙이 있나요? 2n-1
- 출력 내용을 분할해 보세요. 별 개수의 증가, 감소
- 한 라인 안에서 출력 내용을 분할해 보세요. 공백과 별
- 분할한 내용과 입력받은 숫자와 어떤 규칙이 있나요? 공백 1씩 증감, 별 2씩 증감
#include <stdio.h>
#include <stdlib.h>
int main()
{
int n;
int i, j;
scanf("%d", &n);
for(i=n; i>0; i--)
{
for(j=n; j>i; j--)
{
printf(" ");
}
for(j=0; j<2*i-1; j++)
{
printf("*");
}
printf("\\n");
}
for(i=2; i<=n; i++)
{
for(j=n; j>i; j--)
{
printf(" ");
}
for(j=0; j<2*i-1; j++)
{
printf("*");
}
printf("\\n");
}
return 0;
}
Problem2
- 목표 높이 H (정수)를 입력받는다.
- 한 번에 올라갈 수 있는 높이 N (정수)을 입력받는다.
- 몇 번만에 목표 높이에 오를 수 있는지 출력하세요.
#include <stdio.h>
#include <stdlib.h>
int main()
{
int H, N, M;
scanf("%d %d %d", &H, &N, &M);
printf("안 미끄러지면 %d\\n", H/N + (H%N > 0 ? 1:0) );
printf("미끄러지면 %d\\n", (H-N)/(N-M) + ((H-N)%(N-M) != 0 ? 2:1));
return 0;
}