소개
이 랩에서는 C++ 에서 문자를 사용하여 역 반 피라미드 구조를 출력하는 방법을 배웁니다. 이 패턴은 C++ 의 중첩 루프 구조를 활용하여 생성할 수 있습니다.
이 랩에서는 C++ 에서 문자를 사용하여 역 반 피라미드 구조를 출력하는 방법을 배웁니다. 이 패턴은 C++ 의 중첩 루프 구조를 활용하여 생성할 수 있습니다.
먼저, 새로운 C++ 소스 파일을 생성해 보겠습니다. 터미널을 열고 ~/project 디렉토리로 이동합니다. 다음 명령을 사용하여 main.cpp라는 이름의 새로운 C++ 소스 파일을 생성합니다.
cd ~/project
touch main.cpp
프로그램의 첫 번째 단계는 main 함수를 작성하는 것입니다. 이 함수는 프로그램에서 사용할 다른 모든 함수와 데이터 구조를 포함합니다. 먼저 입/출력 연산에 사용되는 iostream 라이브러리를 포함하는 것으로 시작합니다.
#include <iostream>
int main() {
// Code goes here
return 0;
}
다음 단계는 사용자에게 피라미드의 행 개수를 묻는 것입니다. cin 및 cout 함수를 사용하여 이를 수행할 수 있습니다.
std::cout << "Enter the number of rows in the pyramid: ";
int rows;
std::cin >> rows;
이제 문자를 사용하여 역 반 피라미드 패턴을 생성해 보겠습니다. 여기서는 중첩 루프를 사용하는 접근 방식을 사용합니다. 외부 루프는 피라미드의 행을 반복하고, 내부 루프는 해당 행의 각 열을 반복합니다. 패턴을 생성하는 코드는 다음과 같습니다.
char c, first, last; // defining variables
for(int i = rows; i >= 1; i--) { // the outer loop
first = 'A';
last = first + i - 1; // define last element
c = 'A'; // variable `c` is defined to `A`
for(int j = 1; j <= i; j++) { // the inner loop
std::cout << c << " "; // print character and empty space
c++; // shift to next character
}
std::cout << std::endl;
}
이 코드 블록에서 중첩 루프의 코드는 특정 행의 문자 수를 결정하는 데 사용됩니다. c = 'A'에서 시작하여 해당 행의 마지막 문자에 도달할 때까지 계속 증가합니다.
프로그램을 작성했으면 다음 명령을 사용하여 컴파일합니다.
g++ main.cpp -o main && ./main
프로그램에 오류가 없으면 출력은 다음과 같아야 합니다.
Enter the number of rows in the pyramid: 6
F F F F F F
E E E E E
D D D D
C C C
B B
A
출력을 확인하려면 프로그램에서 생성된 출력이 예상 출력과 비교하여 올바른지 확인하십시오. 이 경우 예상 출력은 다음과 같습니다.
Enter the number of rows in the pyramid: 6
The required Reverse Pyramid pattern containing 6 rows is:
Row ## 1 contains characters from A to F : F F F F F F
Row ## 2 contains characters from A to E : E E E E E
Row ## 3 contains characters from A to D : D D D D
Row ## 4 contains characters from A to C : C C C
Row ## 5 contains characters from A to B : B B
Row ## 6 contains characters from A to A : A
이 랩에서는 C++ 에서 문자를 사용하여 역 하프 피라미드 구조를 출력하는 방법을 배웠습니다. 중첩 루프 (nested loops) 를 사용하여 이 패턴을 구현하는 방법을 배우고, 중첩 구조를 탐색하는 방법에 대한 이해를 얻었습니다. 이러한 패턴을 연습함으로써 프로그래밍에서 중첩 루프에 더 익숙해질 것입니다.