Nombre premier en pascal

Résolu/Fermé
max123456 Messages postés 10 Date d'inscription samedi 8 mars 2008 Statut Membre Dernière intervention 21 juillet 2010 - 20 juin 2008 à 00:38
 Raja - 5 mai 2018 à 16:22
Bonjour,

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

un programme s.v.p.

merci bcp d'avance.
A voir également:

10 réponses

fahim0788 Messages postés 111 Date d'inscription vendredi 23 mai 2008 Statut Membre Dernière intervention 19 décembre 2011 10
20 juin 2008 à 01:08
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 samedi 8 mars 2008 Statut Membre Dernière intervention 21 juillet 2010
20 juin 2008 à 18:18
merci fahim, ton programme court et util.
0
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