[PHP] Nombres Premiers de 1à 100

Résolu/Fermé
SamiX - 2 nov. 2009 à 10:35
 Artésina - 14 févr. 2014 à 18:21
Bonjour,

Je dois faire ce petit exercice: Afficher la listes des nombres premiers entre 1 et 100.

Je suis vraiment un débutant en PHP.

Mon prof ma donné un exemple de se que je dois faire (en pseudo-code):

AFFICHER "Voici la liste de nombres premiers entre 1 et 100"
POUR i=0; i<=100; i++

SI i==1
AFFICHER i
SINON
j = 2
TANT QUE i % j != 0
j = j + 1
FIN TANT

SI i = j
AFFICHER i
FIN SI
FIN SI

FIN POUR

En fonction de sa, j'ai essayé de réaliser le code PHP. J'ai déjà fait sa:

<?php
$j = 2;
echo "Voici la liste des nombres premiers entre 1 et 100 :";
echo "<br/>";
for ($i=0;$i<=100;$i++){
if ($i==1){
echo "$i";
echo "<br/>";
}else{

while ($i%$j!=0){
$j = $j + 1;
}
if ($i = $j){
echo "$i";
echo "<br/>";
}
}
}
?>

Le problème c'est que sa m'affiche tous les nombre de 1 à 100...

Où est mon erreur ?

Merci d'avance

3 réponses

abouder Messages postés 14 Date d'inscription lundi 14 juillet 2008 Statut Membre Dernière intervention 12 novembre 2009 7
2 nov. 2009 à 11:11
salam alikoum mon frere votre erreur est dans l'instruction soulignée au dessous tu doit taper "==" au lieu de "=" si non le php effectue l'affectation au lieu de tester l'égalité se qui te donne tous les nombre de 1 à 100 :

<?php
$j = 2;
echo "Voici la liste des nombres premiers entre 1 et 100 :";
echo "<br/>";
for ($i=0;$i<=100;$i++){
if ($i==1){
echo "$i";
echo "<br/>";
}else{

while ($i%$j!=0){
$j = $j + 1;
}
if ($i = $j){
echo "$i";
echo "<br/>";
}
}
}
?>
2