écrire un programme qui affiche tous les nombres premiers entre 5 et 100 comment faire les amis
pour i :=1 to n do
si n mod 2 = 0
alors premier := vrai
si non
n=n+1 mod2
function premier(x:integer):boolean;
var i:integer;
begin
i:=1;
repeat
i:=i+1;
until (i>=sqrt(x)) or (x mod i =0);
premier:=i>sqrt(x);
end;
program test ;
uses wincrt;
var j:integer;
function premier(n:integer):boolean ;
var i:integer;
r:boolean ;
begin
r:=false;
i:=1;
repeat
i:=i+1;
r:= (n mod i =0);
until ((i=n-1)or(r)) ;
premier:=not(r)or(n=2);
end;
BEGIN
for j:=2 to 100 do
if (premier(j)) then
write(j,'/');
END.
كود:function premier(x:integer):boolean; var i:integer; begin i:=1; repeat i:=i+1; until (i>=sqrt(x)) or (x mod i =0); premier:=i>sqrt(x); end;
Chaque fois on incrémente le compteur i par 1 jusqu'a trouver un diviseur de n différent de 1 et de lui même
ou si i>=racine de n car un entier n'a pas de diviseur au delà de sa racine