Programme pascal pour nombre premier ou pas

Fermé
datasciencestudent - Modifié le 5 déc. 2021 à 12:29
ljm972 Messages postés 254 Date d'inscription vendredi 23 février 2007 Statut Membre Dernière intervention 6 décembre 2021 - 6 déc. 2021 à 00:56
Bonjour, voici un programme pascal ou je dois vérifier si un nombre est oremier ou pas mais je comprends pas où est mon erreur?
svp aidez moi.

Program nbr_premier;
uses WinCrt;
Var N,i,r: Integer;
Begin
WriteLn ('Entrez un nolbre ');
Readln(N);
r:=0;
for i:=2 to N do;
Begin
 r:= N Mod i;
 If r=0 Then
  Begin
 writeln (N, ' N:Est pas un nombre parfait');
 else WriteLn (N, ' Est un nombre parfait');
 End
End
End.



Configuration: Windows / Chrome 96.0.4664.45



EDIT : Ajout des balises de code (la coloration syntaxique).
Explications disponibles ici : ICI

Merci d'y penser dans tes prochains messages.
A voir également:

3 réponses

yg_be Messages postés 22726 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 26 avril 2024 1 476
5 déc. 2021 à 10:44
bonjour,
je suggère que tu affiches la valeur de i à chaque tour de boucle.
0
NHenry Messages postés 15113 Date d'inscription vendredi 14 mars 2003 Statut Modérateur Dernière intervention 22 avril 2024 331
5 déc. 2021 à 12:32
Quand tu pose une question avec un exemple de code essayes toujours de préciser le problème clairement.
Dans ton cas :
- Si je rentre XXX
- Je voudrais obtenir YYYYY
- Mais j’obtiens ZZZZZ à la place
0
ljm972 Messages postés 254 Date d'inscription vendredi 23 février 2007 Statut Membre Dernière intervention 6 décembre 2021 29
6 déc. 2021 à 00:56
Program nbr_premier;
uses WinCrt;
Var N,i,r: Integer;
Begin
   WriteLn ('Entrez un nombre ');
   Readln(N);
   r:=0;
   for i:=2 to N do
   Begin
      r:= N Mod i;
      If r=0 Then
          writeln (N, ' Est pas un nombre parfait')
      else 
          WriteLn (N, ' Est un nombre parfait');
   End;
End.

0