CodingTest/BOJ

[BOJ 2439] 백준 별 찍기 - 2 풀이 -C++

황수진 2021. 9. 6. 17:12

사용언어 :  C++

 

 

 

문제풀이

 이중 loop 사용하기 - 바깥의 for문 : 행의 갯수, -안쪽의 for문 : 행 내에서의 별 갯수

입력 값 : 5

출력 : 총 5개의 줄, 각 줄에선 행의 번째 수 만큼 별 출력 -> 전체(5)에서 행의 번째 수 만큼 뺀 값 만큼 띄어주기

- 바깥 for문 

for (int i = 1; i <= N; i++) { //첫번째 줄 부터 N번째 줄 까지
		
	}

- 안쪽 for문

//for (int i = 1; i <= N; i++) {
		//띄어쓰기 (N-i개 만큼 띄어주기)
		for (int j =1; j <= N-i; j++) {
			cout << " ";
		}
        //별 찍기 (i개 만큼 찍어주기)
		for (int k = 1; k <= i; k++) {
			cout << "*";
		}
        //줄 바꿔주기
		cout << endl;
//	}

 

전체코드

#include <iostream>
using namespace std;
int main() {
	int N;
	cin >> N;
	for (int i = 1; i <= N; i++) {
		for (int j =1; j <= N-i; j++) {
			cout << " ";
		}
		for (int k = 1; k <= i; k++) {
			cout << "*";
		}
		cout << endl;
	}
}

 

 


총평

코딩 처음 시작했을 땐 별찍기가 너무 어려웠는데 지금 다시 복습해보니 아무것도 아닌 걸 알게됐다. 유독 코딩에선 지금 당장 공부하는 내용이 어려워 죽을 것 같은데 나중에 알고보면 아무것도 아닌 게 되는 것 같다. 애증의 별찍기


문제 출처

https://www.acmicpc.net/problem/2439

 

2439번: 별 찍기 - 2

첫째 줄에는 별 1개, 둘째 줄에는 별 2개, N번째 줄에는 별 N개를 찍는 문제 하지만, 오른쪽을 기준으로 정렬한 별(예제 참고)을 출력하시오.

www.acmicpc.net