문제

예제를 보고 규칙을 유추한 뒤에 별을 찍어 보세요.

입력

첫째 줄에 N(2 ≤ N ≤ 100)이 주어진다.

출력

규칙대로 별을 출력한다.

예제 입력 1

2

예제 출력 1

** **
 ***
** **

예제 입력 2

5

예제 출력 2

*****       *****
 *   *     *   *
  *   *   *   *
   *   * *   *
    *   *   *
   *   * *   *
  *   *   *   *
 *   *     *   *
*****       *****

더보기

Solution

#include<stdio.h>

int main(void)
{
	int N, i, j;

	scanf("%d", &N);

	for(i=0;i<N;i++)
		printf("*");
	for(i=0;i<2*N-3;i++)
		printf(" ");
	for(i=0;i<N;i++)
		printf("*");
	printf("\n");

	for(i=2;i<N;i++)
	{
		for(j=1;j<i;j++)
			printf(" ");
		printf("*");
		for(j=1;j<N-1;j++)
			printf(" ");
		printf("*");
		for(j=0;j<2*(N-i)-1;j++)
			printf(" ");
		printf("*");
		for(j=1;j<N-1;j++)
			printf(" ");
		printf("*");
		printf("\n");
	}

	for(i=1;i<N;i++)
		printf(" ");
	printf("*");
	for(i=1;i<N-1;i++)
		printf(" ");
	printf("*");
	for(i=1;i<N-1;i++)
		printf(" ");
	printf("*");
	printf("\n");

	for(i=N-1;i>1;i--)
	{
		for(j=1;j<i;j++)
			printf(" ");
		printf("*");
		for(j=1;j<N-1;j++)
			printf(" ");
		printf("*");
		for(j=0;j<2*(N-i)-1;j++)
			printf(" ");
		printf("*");
		for(j=1;j<N-1;j++)
			printf(" ");
		printf("*");
		printf("\n");
	}

	for(i=0;i<N;i++)
		printf("*");
	for(i=0;i<2*N-3;i++)
		printf(" ");
	for(i=0;i<N;i++)
		printf("*");
	printf("\n");

	return 0;
}

2

728x90

+ Recent posts