[PHP] Nombres Premiers de 1à 100 [Résolu/Fermé]
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
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
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/>";
}
}
}
?>
<?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/>";
}
}
}
?>
abouder
- Messages postés
- 14
- Date d'inscription
- lundi 14 juillet 2008
- Statut
- Membre
- Dernière intervention
- 12 novembre 2009
salam alikoum samix je ne pense pas que c'est résolu, il y a une erreur dans l'algorithme il faut ajouter l'instruction soulignée au dessous :
<?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){
$j=2;
echo "$i";
echo "<br/>";
}
}
}
?>
<?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){
$j=2;
echo "$i";
echo "<br/>";
}
}
}
?>