Creación de un patrón de diamante en C++

C++Beginner
Practicar Ahora

Introducción

En este laboratorio, aprenderemos cómo escribir un programa en C++ para imprimir un patrón de diamante utilizando asteriscos (*). Crearemos este programa paso a paso.

Tomar entrada del usuario

Crearemos un nuevo archivo llamado main.cpp en el directorio ~/project utilizando el siguiente comando:

touch ~/project/main.cpp

Tomaremos el número de filas como entrada del usuario.

int rows;

cout << "Enter Diamond Star Pattern Row = ";
cin >> rows;

Mostrando el patrón

Para mostrar el patrón, utilizaremos bucles anidados. El bucle exterior se encargará del número de filas y el bucle interior imprimirá los asteriscos y los espacios.

cout << "Diamond Star Pattern\n";

for (int i = 1; i <= rows; i++) {
    for (int j = 1; j <= rows - i; j++) {
        cout << " ";
    }

    for (int k = 1; k <= i * 2 - 1; k++) {
        cout << "*";
    }

    cout << "\n";
}

for (int i = rows - 1; i > 0; i--) {
    for (int j = 1; j <= rows - i; j++) {
        cout << " ";
    }

    for (int k = 1; k <= i * 2 - 1; k++) {
        cout << "*";
    }

    cout << "\n";
}

Utilizamos dos bucles para dibujar el diamante. Comenzamos dibujando la mitad superior del diamante.

El bucle exterior (el primer bucle for) recorre cada fila del diamante. Utilizamos un bucle anidado dentro del bucle exterior.

Los bucles internos (los dos bucles for) imprimen los espacios y los asteriscos para cada fila del diamante.

  • El primer bucle interno imprime el número correcto de espacios antes de los asteriscos.
  • El segundo bucle interno imprime los asteriscos.

Luego dibujamos la mitad inferior del diamante. Comenzamos utilizando un bucle similar al utilizado en la primera mitad del diamante. El bucle exterior cuenta hacia atrás hasta cero (en orden inverso).

Para compilar y ejecutar el código, utiliza el siguiente comando en la terminal:

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

Código completo

Aquí está el código completo del programa del patrón de diamante.

#include <iostream>
using namespace std;

int main()
{
    int rows;

    cout << "Enter Diamond Star Pattern Row = ";
    cin >> rows;

    cout << "Diamond Star Pattern\n";

    for (int i = 1; i <= rows; i++) {
        for (int j = 1; j <= rows - i; j++) {
            cout << " ";
        }

        for (int k = 1; k <= i * 2 - 1; k++) {
            cout << "*";
        }

        cout << "\n";
    }

    for (int i = rows - 1; i > 0; i--) {
        for (int j = 1; j <= rows - i; j++) {
            cout << " ";
        }

        for (int k = 1; k <= i * 2 - 1; k++) {
            cout << "*";
        }

        cout << "\n";
    }

    return 0;
}

Resumen

En este laboratorio, aprendimos cómo escribir un programa en C++ para imprimir un patrón de diamante utilizando asteriscos (*). Utilizamos bucles anidados para mostrar el patrón. Comenzamos con una entrada simple y paso a paso creamos un programa en C++ que se puede utilizar para imprimir un diamante con asteriscos.