Création d'un motif en diamant en C++

C++Beginner
Pratiquer maintenant

Introduction

Dans ce laboratoire (lab), nous allons apprendre à écrire un programme C++ pour afficher un motif en diamant à l'aide d'astérisques (*). Nous allons créer ce programme étape par étape.

Récupération des entrées de l'utilisateur

Nous allons créer un nouveau fichier nommé main.cpp dans le répertoire ~/project en utilisant la commande suivante :

touch ~/project/main.cpp

Nous allons récupérer le nombre de lignes en tant qu'entrée de l'utilisateur.

int rows;

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

Affichage du motif

Pour afficher le motif, nous allons utiliser des boucles imbriquées. La boucle externe sera responsable du nombre de lignes et la boucle interne affichera les symboles d'astérisque et les espaces.

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";
}

Nous utilisons deux boucles pour dessiner le diamant. Nous commençons par dessiner la moitié supérieure du diamant.

La boucle externe (la première boucle for) parcourt chaque ligne du diamant. Nous utilisons une boucle imbriquée à l'intérieur de la boucle externe.

Les boucles internes (les deux boucles for) affichent les espaces et les astérisques pour chaque ligne du diamant.

  • La première boucle interne affiche le bon nombre d'espaces avant les astérisques.
  • La deuxième boucle interne affiche les astérisques.

Ensuite, nous dessinons la moitié inférieure du diamant. Nous commençons par utiliser une boucle similaire à celle utilisée dans la première moitié du diamant. La boucle externe compte à rebours jusqu'à zéro.

Pour compiler et exécuter le code, utilisez la commande suivante dans le terminal :

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

Code complet

Voici le code complet du programme pour le motif en diamant.

#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;
}

Résumé

Dans ce laboratoire (lab), nous avons appris à écrire un programme C++ pour afficher un motif en diamant à l'aide d'astérisques (*). Nous avons utilisé des boucles imbriquées pour afficher le motif. Nous avons commencé par une simple entrée et avons créé étape par étape un programme C++ qui peut être utilisé pour afficher un diamant avec des astérisques.