begin process at 2012 05 29 19:30:36
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C

 > 

Algorithme

 > 

Maths

 > 

nombres premiers


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

nombres premiers

dimanche 21 octobre 2007 à 18:04:55 | nombres premiers

YkS

Bonjour à tous, je suis actuellement étudiant en BTS IRIS, et j'ai un TD à faire, qui peut paraître assez simple mais dont je ne vois pas comment me sortir.

Je dois coder un petit programme qui demande à l'utilisateur de rentrer un nombre, et qui dit ensuite si ce nombre est un nombre premier, ou non...

J'ai donc pensé m'y prendre de la façon suivante:

main ()
{
    int nb, res, div, verif=0;
   
    printf("Veuillez entrer un nombre entier: ");
    scanf("%d",&nb);
    for(div=2;div<=Je ne vois pas quoi mettre ici,div++)
    {
        if(div == nb)
        {
           continue;
        }
        res = nb % div
        if(res != 0)
        {
            printf("Votre nombre n'est pas un nombre premier");
            verif = 1
        }
    }
    if (verif == 0)
    {
       printf("Votre nombre est un nombre premier");
    }
    getch();
}

Ce code me semble bon, sauf qu'il faut définir un div variant de 2 à n or que mettre pour n ? On ne sait jamais jusqu'à combien diviser un nombre pour savoir s'il est premier ou non n'est-ce pas ? (Remarque je suis nul en maths.. donc il y a peut-être une méthode plus simple pour calculer un nombre premier mais je ne la connais pas...)

Et si j'utilise un do while, où l'arrêter ? Si je demande à ce qu'il s'arrête quand (nb % div) est différent de 0 et que ce nombre est un nombre premier, ça ne s'arrêtera jamais, le programme ne risque pas de bugger ?

Merci d'avance pour vos éventuelles réponses.
   
      
dimanche 21 octobre 2007 à 20:36:52 | Re : nombres premiers

BruNews

Administrateur CodeS-SourceS
Limite à racine carrée du nombre.
Il y a des tas de sources sur les nombres premiers où quasi tout a déjà été dit en commentaires, il faut t'y référer, les sources sont là pour ça.

ciao...
BruNews, MVP VC++
mardi 23 octobre 2007 à 10:33:57 | Re : nombres premiers

acx01b

salut
#include<math.h>
int estpremier (int n) {
  int sqrt_n, i;
  if (!(n%2)) return 0;
  sqrt_n = sqrt(n);
  for (i = 3; i <= sqrt_n; i+=2) {
    if (!(n%i)) return 0;
  }
  return 1;
}


Cette discussion est classée dans : nombre, nb, premier, res, div


Répondre à ce message

Sujets en rapport avec ce message

nombre premier [ par djkill55 ] bonjour, je doi faire un programe ki verife si le nb ke je rentre est premier ou pa a l aide de fonction et je n ai ocune idee cmt faire...aidez moi s Programme sur les nombres entiers [ par K20 ] 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 Utilisation d'OPERATOPR pour opérations grands entiers [ par randriano ] J'ai posté une source sur les grands entiers à l'adresse:http://www.cppfrance.com/codes/UTILISATION-GRANDS-ENTIERS-CPLUSPLUS-BUILDER_42347.aspxLa vers problème avec tri de tableau de chaine - Aidez-moi svp [ par jaguar57 ] Bonjour,Je viens demander de l'aide car j'ai un problème de compréhension de la fonction qsort avec un tableau de chaine fourni par un fichier txt.Je Pbm avec randomize [ par goueg83460 ] bonjour j'essai de faire un programme qui génére un nombre aléatoirement à 4chiffres mais il me sort la plupart du temps un nombre a 5 chiffres. voici Aide [ par couls ] bonjour, je suis une débutante en c,j'aimerai avoir de l'aide sur ce programme ci dessous: Déclarer un tableau <span style="FONT-SIZE: 10p nombre premier [ par igor941 ] bonjour je suis etudiant et j'ai un tp à réaliser j'aurai besoin d'une petite aide de la part de quelqu'un se debrouillant en C puisque je debute en C probleme pour compiler et probleme semantique de code [ par nicolai08 ] bonjour je suis débutant dans le c++ voila mon code pour faire un convertisseur base 10 en hexa et inversement mais je n'arrive a faire de compilati


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,281 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales