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

image.png

image.png

코딩하기 전에 생각을 먼저 해봅시다.

  1. 문제를 작은 단위로 분할해 보세요.
  2. 수학적 규칙성을 찾아보세요.
  3. 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

  1. 목표 높이 H (정수)를 입력받는다.
  2. 한 번에 올라갈 수 있는 높이 N (정수)을 입력받는다.
  3. 몇 번만에 목표 높이에 오를 수 있는지 출력하세요.
#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;
}