[2439번]

<2439번: 문제 해결 방법>

첫째 줄부터 다섯번째 줄까지 차례대로 별을 출력한다고 가정하자.->5x5 크기의 직사각형을 생각해본다. -> 첫째 줄에선 4개의 여백 빈칸, 1개의 *를 포함한 칸 ->둘째 줄에선 3개의 여백 빈칸, 2개의 *를 포함한 칸 -> · · · · · -> 다섯번째 줄에선 0개의 여백 빈칸, 5개의 *를 포함한 칸
=> 첫째 줄에선 N-1개의 여백빈칸, 1개의 *를 포함한 칸 -> · · · · · -> N번째 줄에선 0개의 여백 빈칸, N개의 *를 포함한 칸
<2439번: 코드>
#include <iostream>
using namespace std;
int main() {
int x;
cin >> x;
for (int i = 1; i <= x; i++) {
for (int j = x; j >i; j--) {
cout << " ";
}
for (int j = 1; j <= i; j++) {
cout << "*";
}
cout << "\n";
}
return 0;
}
[2440번]

<2440번: 문제 해결 방법>

여기선 여백을 따로 만들지 않아도 된다.
첫째줄에 N개의 *를 포함한 칸 ...... -> N개줄에 1개의 *를 포함한 칸 ... 이렇게 차례대로 줄어들기 때문에 for문을 이용하여 *의 출력을 조절하기만 하면 되는 문제.
<2440번: 코드>
#include <iostream>
using namespace std;
int main() {
int x;
cin >> x;
for (int i = 1; i <= x; i++) {
for (int j = x; j >=i; j--) {
cout << "*";
}
cout << "\n";
}
return 0;
}
[2441번]

<2441번: 문제 해결 방법>

문제 [2439]번과 비슷한 흐름으로 돌아가는 문제.
첫째 줄부터 다섯번째 줄까지 차례대로 별을 출력한다고 가정하자.->5x5 크기의 직사각형을 생각해본다. -> 첫째 줄에선 0개의 여백 빈칸, 5개의 *를 포함한 칸 ->둘째 줄에선 1개의 여백 빈칸 ,4개의 *를 포함한 칸-> · · · · · -> 다섯번째 줄에선 N-1개의 여백 빈칸, 1개의 *를 포함한 칸
=> 첫째 줄에선 N개의 *를 포함한 칸, 0개의 여백 빈칸 -> · · · · · -> N번째 줄에선 N-1개의 여백 빈칸, 1개의 *를 포함한 칸
<2440번: 코드>
#include <iostream>
using namespace std;
int main() {
int x;
cin >> x;
for (int i = 0; i <x; i++) {
for (int k =0; k<i; k++) {
cout <<" ";
}
for (int j = x; j > i; j--) {
cout << "*";
}
cout << "\n";
}
return 0;
}
'프로그래밍 언어 💬 > C++' 카테고리의 다른 글
[백준] 10991번, 10992번 [별찍기 (3)] (0) | 2020.12.31 |
---|---|
[백준] 2442번, 2445번, 2446번, 2552번 [별찍기 (2)] (0) | 2020.12.31 |
문자열을 나타내기 위한 클래스 "string" (0) | 2020.12.30 |
[백준] 11720번 (0) | 2020.12.26 |
[백준] 10953번 (0) | 2020.12.26 |