728x90
반응형

 

 

문제

 

첫째 줄에는 별 1개, 둘째 줄에는 별 3개, ..., N번째 줄에는 별 2×N-1개를 찍는 문제
별은 가운데를 기준으로 대칭이어야 한다.

 

입력

 

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

 

출력

 

첫째 줄부터 N번째 줄까지 차례대로 별을 출력한다.

 

 

 

 

 

728x90

 

 소스코드

 

#include <stdio.h>
int main()
{
	int N,i,k=1;
	scanf ("%d",&N);
	while (1)
	{	
		if (N==0)
		{
			break;
		}
		for (i=N-1;i>0;i--)
		{
			printf (" ");
		}
		for (i=0;i<k;i++)
		{
			printf ("*");
		}
		k=k+2;
		N=N-1;	
		printf ("\n");
	}
	return 0;
}

 

설명

 

N을 입력받은 후 무한 반복문 하나를 먼저 만들었다. 그리고 조건으로 입력받은 수가 0일 경우 반복을 멈추게 했다.

0이 아닐경우에는 N-1 만큼 공백을 출력했고, 이번 로직에서는 별의 개수가 1, 3, 5, 7, 9...... 이처럼 늘어나기 때문에

별의 개수를 초기값으로 1을 K에 넣어주었고 K만큼 별을 출력했다. 그후 K에 2를 더해주고 N에는 1을 빼주었다.

간단하게 설명하면 N은 공백의 개수 K는 별의 개수로 봐도 무방할 것 같다.

 

 

www.acmicpc.net/problem/2442

 

2442번: 별 찍기 - 5

첫째 줄에는 별 1개, 둘째 줄에는 별 3개, ..., N번째 줄에는 별 2×N-1개를 찍는 문제 별은 가운데를 기준으로 대칭이어야 한다.

www.acmicpc.net

728x90
반응형

'백준 > C' 카테고리의 다른 글

[ C ] 백준 2444번 별 찍기 - 7  (0) 2022.03.21
[ C ] 백준 2443번 별 찍기 - 6  (0) 2022.03.21
[ C ] 백준 2441번 별 찍기 - 4  (0) 2021.01.14
[ C ] 백준 2440번 별 찍기 - 3  (0) 2021.01.14
[ C ] 백준 2439번 별 찍기 - 2  (0) 2021.01.14
  • 네이버 블러그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 카카오스토리 공유하기