C++Talk.NET Forum Index C++Talk.NET
C++ language newsgroups
 
Archives   FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

cherche code source

 
Post new topic   Reply to topic    C++Talk.NET Forum Index -> C++ (French)
View previous topic :: View next topic  
Author Message
Socrate
Guest





PostPosted: Wed Jun 23, 2004 6:26 am    Post subject: cherche code source Reply with quote



bonjours je cherche le code source de programmes permettant de trouver des
nombres premiers mais je ne trouve pas grand chose sous google
merci d'avance


Back to top
Fabien LE LEZ
Guest





PostPosted: Wed Jun 23, 2004 8:35 am    Post subject: Re: cherche code source Reply with quote



On Wed, 23 Jun 2004 08:26:19 +0200, "Socrate"
<socratesdream54 (AT) hotmail (DOT) com>:

Quote:
bonjours je cherche le code source de programmes permettant de trouver des
nombres premiers mais je ne trouve pas grand chose sous google

Uh ?
Y'a l'air au contraire d'avoir pas mal de choses :

http://www.google.com/search?q=%22prime+numbers%22+%22C%2B%2B%22&sourceid=mozilla-search&start=0&start=0&ie=utf-8&oe=utf-8

Après, il faut savoir ce que tu cherches exactement : quelques
"petits" nombres premiers ? Beaucoup de petits nombres premiers ? Des
nombres premiers assez gros pour servir dans les algorithme de
cryptage ?

Le mieux est d'aller sur fr.comp.algorithmes pour connaître le nom de
l'algorithme qui convient à ton problème, puis de rechercher ce nom
sur Google.


--
schtroumpf schtroumpf

Back to top
Alexandre
Guest





PostPosted: Wed Jun 23, 2004 5:12 pm    Post subject: Re: cherche code source Reply with quote




"Socrate" <socratesdream54 (AT) hotmail (DOT) com> a écrit dans le message de
news:40d9228b$0$656$a3f2974a (AT) nnrp1 (DOT) numericable.fr...
Quote:
bonjours je cherche le code source de programmes permettant de trouver des
nombres premiers mais je ne trouve pas grand chose sous google
merci d'avance


un peu HS ici, ça concerne plutot fr.comp.algorithmes.


Un algo simple mais pas très efficace (très bien pour de petits nombres) :
le cribble d'erathostène (pas sur de l'orthographe).

Le principe : tu considère que tous les nombres sont premiers.
Tu sais que 2 est premier.
Tu calcules les multiples de 2. Ils ne sont, par définition, pas premiers.
Et ainsi de suite...

Ce qui donnerait en C++ :

class Crible
{
std::vector<bool> EstPremier;
public:
Crible(int NMax):EstPremier(NMax+1,true){}
void Calcule();
void Affiche()
{
for(int i=2;i if(EstPremier[i])
cout< }
};

void Crible::Calcule()
{
for(int i=2; i < EstPremier.size() / 2 ; i++) // la moitié suffit
{
//--- calcule tous le multiples de i : ils ne sont pas premiers !
for(int j=2; (i*j) EstPremier[i*j] = false;
}
}

et voila, en peu de lignes, comment calculer n nombres premiers. Attention :
algo assez long si tu en veux beaucoup !!!
Mais à ma connaissance c'est le plus simple à comprendre et à implémenter.



Back to top
Display posts from previous:   
Post new topic   Reply to topic    C++Talk.NET Forum Index -> C++ (French) All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


Powered by phpBB © 2001, 2006 phpBB Group
SEO toolkit © 2004-2006 webmedic.