Нарисовать идеальную ёлку с использованием C++

C++C++Beginner
Практиковаться сейчас

💡 Этот учебник переведен с английского с помощью ИИ. Чтобы просмотреть оригинал, вы можете перейти на английский оригинал

Введение

В этом лабе мы научимся создавать идеальную ёлочную узор с использованием символа "*" на языке программирования C++. Мы пройдём по шагам, чтобы добиться этого. Код будет представлен на языке C++ и пояснён для удобства понимания.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL cpp(("C++")) -.-> cpp/BasicsGroup(["Basics"]) cpp(("C++")) -.-> cpp/ControlFlowGroup(["Control Flow"]) cpp(("C++")) -.-> cpp/IOandFileHandlingGroup(["I/O and File Handling"]) cpp/BasicsGroup -.-> cpp/variables("Variables") cpp/ControlFlowGroup -.-> cpp/for_loop("For Loop") cpp/IOandFileHandlingGroup -.-> cpp/output("Output") cpp/IOandFileHandlingGroup -.-> cpp/user_input("User Input") subgraph Lab Skills cpp/variables -.-> lab-96160{{"Нарисовать идеальную ёлку с использованием C++"}} cpp/for_loop -.-> lab-96160{{"Нарисовать идеальную ёлку с использованием C++"}} cpp/output -.-> lab-96160{{"Нарисовать идеальную ёлку с использованием C++"}} cpp/user_input -.-> lab-96160{{"Нарисовать идеальную ёлку с использованием C++"}} end

Определение переменных и получение ввода от пользователя

Мы создадим новый файл с именем main.cpp в директории ~/project с использованием следующей команды:

touch ~/project/main.cpp

Первым шагом является определение переменных и получение ввода от пользователя для ширины и высоты ёлки. В этом шаге мы также определяем переменную space, которая равна width * height.

#include<iostream>
using namespace std;

int main()
{
    int width, height, i, j, k, n = 1;

    cout << "Please Enter Christmas Tree Width & Height = ";
    cin >> width >> height;

    int space = width * height;
}

Создание узора ёлки

В этом шаге мы создаём узор ёлки. Мы используем три цикла. Наиболее внешний цикл итерируется от 1 до height. Первый внутренний цикл выводит пробелы, необходимые для центрирования ёлки. Второй внутренний цикл выводит символы "*".

    for (int x = 1; x <= height; x++)
    {
        for (i = n; i <= width; i++)
        {
            for (j = space; j >= i; j--)
            {
                cout <<" ";
            }
            for (k = 1; k <= i; k++)
            {
                cout <<"* ";
            }
            cout <<"\n";
        }
        n = n + 2;
        width = width + 2;
    }

Создание основания ёлки

В этом шаге мы создаём основу для ёлки. Мы используем два цикла. Первый цикл итерируется от 1 до height - 1, а второй цикл выводит символы "*", необходимые для основания.

    for (i = 1; i <= height - 1; i++)
    {
        for (j = space - 3; j >= 0; j--)
        {
            cout << " ";
        }
        for (k = 1; k <= height - 1; k++)
        {
            cout << "* ";
        }
        cout << "\n";
    }

Для запуска кода в терминале:

g++ main.cpp -o main && ./main

Резюме

В этом лабе мы научились создавать идеальную ёлочную узор с использованием символа "*" на языке программирования C++. Мы последовательно прошли все этапы и пояснили код для удобства понимания. Надеемся, что этот лаб будет полезен для вас!