Pascal Nombre Premier

Nour.Bac2012 -  
Char Snipeur Messages postés 9813 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonjour!(ou bonsoir!!)
Ca fait une heure que je galére sur Pascal,j'essaie d'écrire une procedure qui permet de trouver tout les nombres premiers entre 1 et 100 et de les classer dans un tableau. voila mon essai, mais ca ne marche pas ! Pouvez vous m'aider a trouver ce qui cloche??
procedure premier;
var i,j,r,n:integer;T:TAB;
begin
n:=0;
for i:=1 to 100 do
begin
for j:=1 to i do
begin
r:=0;
if (i mod j = 0) then r:=r+1;
if r=2 then T[n]:=i;
end;
end;
writeln(T[n]);
end;
A voir également:

1 réponse

Char Snipeur Messages postés 9813 Date d'inscription   Statut Contributeur Dernière intervention   1 299
 
Salut.
Déjà, à un moment donnée, il faudrait que tu incrémente n.
ensuite, ta boucle sur j, tu peux la faire de 2 à i-1, comme ça tu évites de compter ce qui est évident, et dès que tu as un mod =0 tu sais que ton nombre est premier.
D'ailleurs tu peut optimiser en bouclant j uniquement jusqu'à sqrt(i).
0