Comment imprimer ce motif?
$number = 5;
for ($i=1; $i <= $number ; $i++) {
for ($j=$i; $j >= 1;$j--){
echo "0";
}
echo "\n";
}
Impressions
0
00
000
0000
00000
J'ai essayé comme ça, mais je suis confus d'imprimer star et Zero char
for ($i=1; $i <= $number ; $i++) {
$sum = 0;
for ($j=$i; $j >= 1;$j--){
$sum +=$j;
}
echo $i ." => " .$sum ."\n";
}
Impressions
1 => 1
2 => 3
3 => 6
4 => 10
5 => 15
PHP_EOL
est plus portable #justsayinVoici une autre façon, qui utilise une lecture plus littérale de la logique de remplacement. Ici, je forme chaque ligne suivante en prenant la ligne précédente et en ajoutant le nombre de lignes
*
à la*
section, puis je marque simplement un nouveau zéro de fin.Cela imprime:
la source
Le nombre de zéros est égal à $ i dans la boucle for. Nous avons donc juste besoin de calculer le nombre d'étoiles, puis de simplement faire un str_repeat
Production:
la source
$ line = '';
pour ($ i = 1; $ i <= 5; $ i ++) {
$ line = str_repeat ('*', $ i). $ line. «0»; // str_repeat () -> obtention d'une chaîne // longueur
echo $ line. PHP_EOL; // PHP_EOL ---> représente le caractère de fin.
}
la source