C++ 문자 역 하프 피라미드 패턴

C++Beginner
지금 연습하기

소개

이 랩에서는 C++ 에서 문자를 사용하여 역 반 피라미드 구조를 출력하는 방법을 배웁니다. 이 패턴은 C++ 의 중첩 루프 구조를 활용하여 생성할 수 있습니다.

새 C++ 소스 파일 생성

먼저, 새로운 C++ 소스 파일을 생성해 보겠습니다. 터미널을 열고 ~/project 디렉토리로 이동합니다. 다음 명령을 사용하여 main.cpp라는 이름의 새로운 C++ 소스 파일을 생성합니다.

cd ~/project
touch main.cpp

main 함수 작성

프로그램의 첫 번째 단계는 main 함수를 작성하는 것입니다. 이 함수는 프로그램에서 사용할 다른 모든 함수와 데이터 구조를 포함합니다. 먼저 입/출력 연산에 사용되는 iostream 라이브러리를 포함하는 것으로 시작합니다.

#include <iostream>

int main() {
    // Code goes here
    return 0;
}

사용자에게 행 개수 입력 받기

다음 단계는 사용자에게 피라미드의 행 개수를 묻는 것입니다. cincout 함수를 사용하여 이를 수행할 수 있습니다.

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) 를 사용하여 이 패턴을 구현하는 방법을 배우고, 중첩 구조를 탐색하는 방법에 대한 이해를 얻었습니다. 이러한 패턴을 연습함으로써 프로그래밍에서 중첩 루프에 더 익숙해질 것입니다.