cs_K20
Messages postés10Date d'inscriptionsamedi 26 juin 2004StatutMembreDernière intervention24 juin 2006
-
6 avril 2005 à 15:11
cs_K20
Messages postés10Date d'inscriptionsamedi 26 juin 2004StatutMembreDernière intervention24 juin 2006
-
6 avril 2005 à 18:14
Bonjour tout le monde ! Je suis nouveau ici et j'ai un problème avec un programme en C++ ... j'utilise Dev C++ 3.0.
J'ai fait un programme qui permet de déterminer si un nombre est premier ou pas.
Pour cela, je vérifie si le nombre est divisible par tous les entiers
inférieurs ou égaux à sa racine carré (c'est ce qu'on apelle le
théorème de parité pour ceux qui connaissent ;))
Dans mon programme en fait, je divise le nombre par les entiers et je
vérifie si la valeur obtenu est égale à la partie entière de cette
division, en clair, je vérifie si la division tombe juste :p
Si elle tombe juste, alors le nombre n'est pas premier car il est divisible par un nombre, si non, il est premier !
Le problème c'est qu'à partir de 7, mon programme me dit que 7 n'est
pas premier ... Et ainsi de suite pour tous les autres nombres premiers
... Donc mon programme ne fonctionne pas ...
J'ai fait le même principe que sur mon script php (qui effectue la même
tache) et celui fonctionne parfaitement ... Ainsi que sur ma calculette
LOL !
Donc voilà, je voudrais savoir d'où vient mon problème :(
jul39dole
Messages postés117Date d'inscriptionmardi 22 juillet 2003StatutMembreDernière intervention21 janvier 2011 6 avril 2005 à 15:31
et tu n'as aucun warning à la compilation ? a la ligne if (c d) { i 1; }, je mettrai if((float)c==d){i=1;}
car la comparaison d'un entier et d'un float n'est pas tellement possible...
Un autre moyen plus simple est d'utiliser le module (opérateur % ), pour tester s'il y a un reste ou non.
cs_K20
Messages postés10Date d'inscriptionsamedi 26 juin 2004StatutMembreDernière intervention24 juin 2006 6 avril 2005 à 15:35
Erf, ça ne fonctionne toujours pas
et non je n'ai aucune erreur lors de la compilation ... Pourrais-tu
m'expliquer comment faire pour vérifier s'il y a un reste ou pas ?