07-02-2008, 16:29 PM
Bonjour!
J'ai un petit exercice à faire (je dois le terminer demain matin alors si vous pouviez m'aider??!!):
le but est de vérifier si un nombre donné est premier ou non. On peut utiliser l'instruction break.
NB: Un nombre est premier si et seulement s'il est divisible seulement pas 1 et lui-même!
Voici ce que j'ai fait:
Pourriez-vous vérifier si c'est correct? Et me donner des idées pour l'améliorer? Par exemple en diminuant le nombre de conditions à tester si c'est possible?
Lorsque je choisis nombre=10, on me dit bien qu'il n'est pas premier, mais lorsque je choisis un nombre que je sais premier par exemple 11, le programme se lance et n'affiche rien, vraiment rien! Il ne se ferme même pas.
Que faire d'ailleurs lorsqu'un programme fait ça?
Merci beaucoup d'avance!
J'ai un petit exercice à faire (je dois le terminer demain matin alors si vous pouviez m'aider??!!):
le but est de vérifier si un nombre donné est premier ou non. On peut utiliser l'instruction break.
NB: Un nombre est premier si et seulement s'il est divisible seulement pas 1 et lui-même!
Voici ce que j'ai fait:
Citation :#include <stdio.h>
#include <math.h>
#include <stdlib.h>
int main(void)
{
int nombre=10, i=2;
int premiertest, deuxiemetest;
// Besoin du test /1 ?
while(i<=nombre)
{
premiertest=nombre%1;
deuxiemetest=nombre%i;
if(premiertest!=0)
{
printf("%d n'est pas un nombre premier\n",nombre);
i=nombre;
}
else if(premiertest==0 && deuxiemetest!=0 && nombre<i)
{
i++;
}
else if (premiertest==0 && deuxiemetest==0 && nombre!=i)
{
printf("%d n'est pas un nombre premier\n",nombre);
i=nombre;
}
else if (premiertest==0 && deuxiemetest==0 && nombre==i)
printf("%d est un nombre premier\n",nombre);
}
return 0;
}
Pourriez-vous vérifier si c'est correct? Et me donner des idées pour l'améliorer? Par exemple en diminuant le nombre de conditions à tester si c'est possible?
Lorsque je choisis nombre=10, on me dit bien qu'il n'est pas premier, mais lorsque je choisis un nombre que je sais premier par exemple 11, le programme se lance et n'affiche rien, vraiment rien! Il ne se ferme même pas.
Que faire d'ailleurs lorsqu'un programme fait ça?
Merci beaucoup d'avance!