Maison  >  Article  >  développement back-end  >  Programme C++ pour imprimer un motif d'étoile triangulaire droite creuse

Programme C++ pour imprimer un motif d'étoile triangulaire droite creuse

PHPz
PHPzavant
2023-08-30 11:01:041342parcourir

Programme C++ pour imprimer un motif détoile triangulaire droite creuse

Très utile pour afficher des motifs d'étoiles dans différents formats comme la pyramide, le carré et le diamant Couramment utilisé dans la programmation de base et la construction logique. Combien d'étoiles avons-nous vu Problèmes de modèle numérique lors de l’apprentissage des instructions de boucle en programmation. Dans cet article, Nous verrons comment imprimer un motif d’étoile creuse en triangle rectangle en C++.

Dans ce programme, nous prenons le numéro de ligne n qui créera un motif en étoile pour n nombres Fil. Regardons le même exemple.

Motif étoile creuse droite

            *
          * *
        *   *
      *     *
    *       *
  *         *
* * * * * * *

Dans cet exemple, il y a n lignes. Chaque rangée comporte plusieurs étoiles, et au début il y a est un espace. Il n'y a que deux étoiles dans la rangée sauf la première et la dernière rangée, et Il y a des espaces entre les deux. La première ligne ne contient qu'une seule étoile et la dernière ligne Contient n étoiles.

Chaque ligne comporte n – i espaces, puis les étoiles sont imprimées. Pour des triangles complets alignés à droite, nous imprimons les étoiles en continu. Mais ici, nous imprimons Pour la première et la dernière positions, des espaces sont par ailleurs imprimés pour les rendre creux. en finale OK, il imprimera toutes les étoiles pour faire la bordure.

Algorithme

  • Lire n en entrée
  • Pour i de 1 à n, fais
    • Pour j allant de 1 à n - i, procédez comme suit
      • Entrez dans un espace
    • Fin
    • Pour k de 1 à i, fais
      • Si i est différent de n, alors
        • Si k = 1 ou k = i, alors
          • Afficher "*"
        • Sinon
          • affichant vide
        • Si ça se termine
      • Sinon
        • Afficher "*"
      • Si ça se termine
    • Fin
    • Déplacer le curseur vers la ligne suivante
  • Fin

En raison de certaines limitations du compilateur en ligne, nous avons ajouté des points au lieu d'espaces dans le code. commencer. Sinon, la ligne sera parfois tronquée et le résultat deviendra incorrect.

Exemple

#include <iostream>
using namespace std;
void solve( int n ){
   for ( int i = 1; i <= n; i++ ) {
      for ( int j = 1; j <= n - i; j++ ) {
         cout << ".";
      }
      for ( int k = 1; k <= i; k++ ) {
         if ( i != n ) {
            if ( k == 1 || k == i ) {
               cout << "*";
            } else {
               cout << " ";
            }
         } else {
            cout << "*";
         }
      }
      cout << "\n";
   }
}
int main(){
   int n = 7;
   cout << "Hollow Star Pattern for " << n << " lines." << endl;
   solve( n );
}

Sortie

Hollow Star Pattern for 7 lines.
......*
.....**
....* *
...*  *
..*   *
.*    *
*******

sortie (n=18)

Hollow Star Pattern for 18 lines.
.................*
................**
...............* *
..............*  *
.............*   *
............*    *
...........*     *
..........*      *
.........*       *
........*        *
.......*         *
......*          *
.....*           *
....*            *
...*             *
..*              *
.*               *
******************

Conclusion

Le modèle Star est facile à mettre en œuvre et utile pour étudier les concepts de boucle en programmation. Dans certains articles nous avons vu des techniques pour imprimer des motifs d'étoiles comme des pyramides, des boîtes etc. diamant. Dans cet article, nous avons vu comment afficher une pyramide creuse en C++. ça prend La ligne numéro n affiche ensuite un motif d'étoile triangulaire creuse aligné à droite. Chaque ligne a Après quelques espaces, il y a quelques étoiles. Les espaces sont utilisés pour l'alignement (en raison des limitations Pour le compilateur en ligne, nous utilisons des points au lieu d'espaces pour l'alignement). Pour la dernière ligne, c'est Imprime toutes les étoiles, mais pour les autres lignes, il imprime les étoiles uniquement aux positions de la première et de la dernière ligne. Pilier. Cela crée un triangle creux.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer