Maison  >  Article  >  interface Web  >  Comment imprimer une pyramide en utilisant Javascript

Comment imprimer une pyramide en utilisant Javascript

PHPz
PHPzoriginal
2023-04-25 10:31:293749parcourir

En JavaScript, vous pouvez utiliser des boucles et des instructions conditionnelles pour imprimer des pyramides. Cet article présentera plusieurs façons d'implémenter des pyramides, notamment en utilisant des boucles for, des boucles while et des fonctions récursives.

  1. Utilisez une boucle for pour imprimer la pyramide

La pyramide est composée de rangées d'astérisques. Vous devez d'abord déterminer la hauteur de la pyramide, puis utiliser une boucle for pour imprimer les astérisques de chaque ligne.

Voici le code pour imprimer la pyramide à l'aide d'une boucle for :

function printPyramid(height) {
  for (var i = 1; i <= height; i++) {
    var row = &#39;&#39;;
    for (var j = 1; j <= height - i; j++) {
      row += &#39; &#39;; // 添加空格
    }
    for (var k = 1; k <= 2 * i - 1; k++) {
      row += &#39;*&#39;; // 添加星号
    }
    console.log(row); // 打印每一行
  }
}

Dans le code ci-dessus, la première boucle for est utilisée pour contrôler le nombre de lignes imprimées, la seconde boucle for est utilisée pour imprimer les espaces de début, et la troisième boucle for est utilisée pour imprimer les espaces de début. Utilisé pour imprimer les astérisques. Dans chaque ligne, le nombre d'astérisques est 2i-1, où i est le numéro de ligne de la ligne actuelle.

  1. Impression d'une pyramide à l'aide de la boucle While

Vous pouvez imprimer une pyramide à l'aide de la boucle while, en remplaçant le compteur dans la boucle for par une variable et en incrémentant la valeur de la variable à chaque fois dans la boucle.

Voici le code pour utiliser une boucle while pour imprimer la pyramide :

function printPyramid(height) {
  var i = 1;
  while (i <= height) {
    var row = &#39;&#39;;
    var j = 1;
    while (j <= height - i) {
      row += &#39; &#39;; // 添加空格
      j++;
    }
    var k = 1;
    while (k <= 2 * i - 1) {
      row += &#39;*&#39;; // 添加星号
      k++;
    }
    console.log(row); // 打印每一行
    i++;
  }
}

Ce code est très similaire au code utilisant une boucle for, sauf que le compteur est remplacé par une variable, puis une boucle while est utilisée pour contrôler le nombre de boucles.

  1. Impression d'une pyramide à l'aide de fonctions récursives

Une fonction récursive est un moyen de diviser un problème en sous-problèmes plus petits et de s'appeler à plusieurs reprises pour résoudre le problème. Vous pouvez utiliser une fonction récursive pour imprimer la pyramide. Le paramètre de la fonction récursive est la hauteur de la pyramide.

Voici le code pour imprimer la pyramide à l'aide d'une fonction récursive :

function printPyramidRecursively(height) {
  if (height > 0) {
    printPyramidRecursively(height - 1);
    var row = '';
    for (var i = 0; i < height; i++) {
      row += '* ';
    }
    console.log(row);
  }
}

Dans le code ci-dessus, la condition de terminaison de la fonction récursive est que la hauteur de la pyramide soit nulle. Dans chaque appel récursif, la partie précédente est affichée en premier, puis une ligne composée d'astérisques est imprimée. Le résultat final est une pyramide complète.

Résumé

Les pyramides peuvent être imprimées via des boucles et des fonctions récursives à l'aide de JavaScript. Quelle que soit la méthode que vous utilisez, vous devez déterminer la hauteur de la pyramide et utiliser une boucle ou une fonction récursive pour imprimer les astérisques de chaque ligne en fonction de la hauteur. À mesure que la hauteur augmente, la taille de la pyramide augmente, vous devez donc vous assurer que vous utilisez un ordinateur ou un navigateur suffisamment puissant pour gérer des pyramides plus grandes.

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:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn