Php triangle étoiles [Résolu/Fermé]

Signaler
Messages postés
350
Date d'inscription
lundi 30 juin 2008
Statut
Membre
Dernière intervention
26 mai 2016
-
 ADil Ou7 -
Bonjour,
je cherche a réaliser un triangle avec un charactère * à l'aide d'une boucle en fonction d'un nombre donné dans une variable $taille (exemple avec 5 ici)

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

15 réponses

Messages postés
224
Date d'inscription
dimanche 25 janvier 2009
Statut
Membre
Dernière intervention
21 juillet 2010
12
ba je ne vois pas ou tu bloque mise a par que je ne vois pas l'utilister apres bon je juge pas mais tu a parler de boucle .

si tu as penser a ca je ne vois pas ou est ton probleme la realisation est toute conne

- tu defini une varriable taille (nombre d'etoil) si tu veu ue la generation soit dynamique (piloter par un fomulaire par exemple)

-tu creer une boucle de 1 a $taille qui s'increment de 1 a chaque foi (pour les lignes)

- tu place $taille nombre d'etoile sur chaque ligne en fonction de $taille donc la tu devra faire une boucle de 1 a $taille encore une foi pour le nombre d'etoile (echo '*';)

et au final tu aura ton triangle

Ca s'est l'idée de base (une ébauche d'algo tres tres franciser xd)

a toi de faire la suite
Messages postés
350
Date d'inscription
lundi 30 juin 2008
Statut
Membre
Dernière intervention
26 mai 2016
12
on a le droit de faire
nb = nombre de fois
étoile = *

echo nb X "étoile"
Messages postés
224
Date d'inscription
dimanche 25 janvier 2009
Statut
Membre
Dernière intervention
21 juillet 2010
12
Euh nan ca va te sortir une erreur

on ne peu pas multiplier une varriable int avec une varriable string ^^'

ca serais pratique pourtant
Messages postés
350
Date d'inscription
lundi 30 juin 2008
Statut
Membre
Dernière intervention
26 mai 2016
12
$taille = 5;
for ($i = 0; $i < $taille; $i++)
echo "* ";

jsuis bloqué là
bonita14
Messages postés
1
Date d'inscription
dimanche 6 septembre 2015
Statut
Membre
Dernière intervention
6 septembre 2015

<?php

$l=5;
$es=$l-1;
$et=1;

for($i=0 ; $i<$l ; $i++)
{
for($k=1 ; $k<=$es ; $k++)
{
echo "";
}

for($b=1 ; $b<=$et ; $b++)
{

echo "*";
}
echo "<br/>";
$es--;
$et+=2;

}
Messages postés
224
Date d'inscription
dimanche 25 janvier 2009
Statut
Membre
Dernière intervention
21 juillet 2010
12
tu as oublier une boucle

la 1ere boucle servira pour creer les 5 ligne 5ligne -> 5etoile

la seconde boucle a creer le bon nombre d'etoile

en gros tu refait la meme bouche ou ce coups ci tu mettra ton checho '*',

sans oublier les {} sur chaque bouche ^^
Messages postés
350
Date d'inscription
lundi 30 juin 2008
Statut
Membre
Dernière intervention
26 mai 2016
12
j'ai essayé ça mais ça fonctionne pas

$taille = 5;
for ($i = 0; $i < $taille; $i++)
echo "*". "<br>";
for ($i = 0; $i < $taille; $i++)
echo "*";
<?php
echo("sat cv");
$a=10;
for($i=0;$i<$a;$i++)
{
for($j=0;$j<$i;$j++)
{
echo("*");
}
echo "<br>";
}

?>
Messages postés
224
Date d'inscription
dimanche 25 janvier 2009
Statut
Membre
Dernière intervention
21 juillet 2010
12
je t'ai dit de pas oublier les { et }, si s'est pas dans ton code s'est normal

$taille = 5; 
for ($i = 1; $i <= $taille; $i++) 
{ 
     for ($i = 1; $i <= $taille; $i++) 
     {
          echo "*";
     }
}



donc la logique est pas vraiment la ....

-tes boucle de 1 a 5 parce que tu as 1 etoile et tu en veu 5 et pas 0 a 4
- n'oublie pas les accolade sinon toes boucle servent a rien
- place bien ton echo '*';
Messages postés
350
Date d'inscription
lundi 30 juin 2008
Statut
Membre
Dernière intervention
26 mai 2016
12
ben dans ce cas là il ne m'affiche que ça

*****
Bonjour

Ça m'étonnerait que ça marche beaucoup mieux :)

Si ta boucle intérieure utilise la même variable que la boucle extérieure, ta boucle extérieure ne sert à rien
Si de plus les deux vont jusqu'à $taille, tu vas toujours dessiner 5 étoiles....

$taille = 5; 
for ($i = 1; $i <= $taille; $i++) 
{ 
     for ($k = 1; $k <= $i; $k++) 
     {
          echo "*";
     }
}
Oups... oublié le saut de ligne à chaque fois...

taille = 5; 
for ($i = 1; $i <= $taille; $i++) 
{ 
     for ($k = 1; $k <= $i; $k++) 
     {
          echo "*";
     }
     echo '<br />';
}
Messages postés
350
Date d'inscription
lundi 30 juin 2008
Statut
Membre
Dernière intervention
26 mai 2016
12
ça me donne ça : ***************
je comprends plus rien là
Messages postés
350
Date d'inscription
lundi 30 juin 2008
Statut
Membre
Dernière intervention
26 mai 2016
12
ah merci :) c'était le br
Messages postés
224
Date d'inscription
dimanche 25 janvier 2009
Statut
Membre
Dernière intervention
21 juillet 2010
12
ah oui merde je l'ai oublier celui la ...
une erreur d'inatiention

marque comme resolue a plus
dsl c'est quoi br
Retour à la ligne