Bonjour Morgan,
Tu dois fonctionner étape par étape et ne pas diffuser des algorithmes comme cela.
Reprends les choses une à une.
Morgan a écrit :
Lire n
S prend la valeur 0
D prend la valeur 2
Tant que \(D \leq E(\sqrt{n})\) et S=0
Si partie décimale \((\frac{n}{D})\)=0
Alors S prend la valeur 1
Sinon D prend la valeur D+1
Fin Si
Fin Tant que
Si S=0
Alors afficher "true"
Sinon afficher "false"
Fin Si
Voici le tout premier algorithme que tu voulais. Il demande un nombre "n" et renvoie si ce nombre "n" est premier ou non.
As-tu remarqué que la boucle "Pour" est inutile ici ?
Maintenant, que souhaites-tu exactement ?
Tu veux, je crois, un algorithme qui renvoie tous les nombres premiers plus petits que "n".
Si tu utilise une boucle "Pour j allant de 2 à n" alors du dois faire le test précédent sur chaque nombre "j" allant de 2 à "n" et pas sur "n" !
Lis bien les remarques et comprends tout cela avant de relancer sur la toile un nouvel algorithme.
Bon courage !