Nombre premier en pascal

Résolu/Fermé
max123456 Messages postés 10 Date d'inscription   Statut Membre Dernière intervention   -  
 Raja -
Bonjour,

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

un programme s.v.p.

merci bcp d'avance.

10 réponses

fahim0788 Messages postés 111 Date d'inscription   Statut Membre Dernière intervention   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 Date d'inscription   Statut Membre Dernière intervention  
 
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