help please avec les boucles en php

Par raoufcode, il y a 4 ans


Décrivez ici votre problème ou ce que vous cherchez à faire.

Afficher tous les nombres par ordre décroissant entre 0 et 100, puis affichez hourrah chaque nombre premier entre 100 et zéro au sein de la même boucle qui affiche les pairs décroissants. Entourez votre code en utilisant "```" pour bien le mettre en forme. (ne copiez pas trop de code) ```"<?php //boucle qui donne les nombres paires au dessous de 100 for($n=100; $n>0; $n-=1 ){ $tableaunombrepaires[]= $n; //boucle qui donne les diviseurs for($j=2; $j<=$n/2; $j++) { $diviseurs[]= $j; } // ici on divise foreach($diviseurs as $diviseur){ $restes[]=$n%$diviseur; } if(!(in_array(0,$restes))){ echo "$n hourrah! \n"; } else{ echo "$n \n"; } } ?>" **Ce que je veux** résoudre le le probleme svp car mon code ne marche pas

2 réponses

popotte, il y a 4 ans

Alors avant de repondre je reposte ton code parce que tu a wrappé des ' dans tout le texte :x

<?php //boucle qui donne les nombres paires au dessous de 100 for($n=100; $n>0; $n-=1 ){ $tableaunombrepaires[]= $n; //boucle qui donne les diviseurs for($j=2; $j<=$n/2; $j++) { $diviseurs[]= $j; } // ici on divise foreach($diviseurs as $diviseur){ $restes[]=$n%$diviseur; } if(!(in_array(0,$restes))){ echo "$n hourrah! \n"; } else { echo "$n \n"; } }
popotte, il y a 4 ans

Alors, il y'a quelques modif à faire:

<?php for ($nb=100; $nb > 0; $nb--) { $isPrimary = true; // Si Le nombre est divisible par 2, ce n'est pas un nombre premier de toute façon, du coup on passe directement à l'itération suivante. if($nb % 2 == 0) { continue; } for ($div=2; $div <= ($nb/2); $div++) { // Si le nombre a été divisé if ($nb % $div == 0) { // Si le nombre n'est pas primary, on dit à la loop que le nb n'est pas primary et on break cete sous-loop. $isPrimary = false; break; } } // Si la loop $div n'a pas été break et qu'il a laissé $isPrimary a true, on echo if ($isPrimary) { echo 'Hourra!\n'; } else { echo $nb . '\n'; } }

Au fait le ?> à la fin faut pas le mettre, c'est une norme PSR ;p :
https://www.php-fig.org/psr/psr-12/
Section 2.2