Bonjour,
Un exercice qui demande d'afficher les entiers premiers circulaires (Exemple : 971, 719, 197) existants dans un intervalle saisi 10<p<q<20000.
Voilà le programme Pascal : http://pastebin.com/edit.php?i=JrEXhpFk
Dans le programme précédent, la fonction premier se fait avec une boucle (tant que).
J'ai remarqué que si je change la méthode pour vérifier si l'entier est premier ou non (boucle répéter...jusqu'à), le nombre 16433 ne s'affiche pas !
Une explication SVP !!
Ps : La fonction avec la boucle répéter est comme suit :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 Function premier(n:integer):boolean; var d:integer; test:boolean; Begin d:=1; Repeat d:=d+1; test:=n mod d<>0; Until(not test) or (d> n div 2); premier:=test; End;
Partager