Nombre premier en pascal

Résolu/Fermé
max123456 Messages postés 10 Statut Membre -  
 Raja -
Bonjour,

comment Vérifier si un nombre entier est un nombre premier, en pascal.

un programme s.v.p.

merci bcp d'avance.
Configuration: Windows XP
Internet Explorer 6.0

10 réponses

fahim0788 Messages postés 111 Statut Membre 10
 
salut, pour verifier si le nombre n est premier ou pas le principe est de tester tous les nombres inferieur à n qu'on, si le reste de la division de n/i est 0 donc i est un diviseur on compte les diviseurs avec la variable r,a la fin si le programme trouve plus de 2 diviseurs cela veut dire que n admet un diviseur a part 0 et lui même =>n n'est pas premier si non le nombre est premier.

program premier;
uses wincrt;
var n,r,i:integer;
begin
write('Donnez un entier naturel : ');
read(n);
r:=0;
for i:=1 to n do
if n mod i = 0 then r:=r+1;

if r=2 then write('le nombre est premier') else
write('le nombre n'est pas premier');
end.

Rq: cette algorithme peut s'améliorer pour gagner du temps
27
max123456 Messages postés 10 Statut Membre
 
merci fahim, ton programme court et util.
0
lamiaa
 
j'ai pas compris tu peux me traduire ce algorithme en francais et avec la structure répétitive repeter jusqu'a
merci d'avance
0