begin process at 2010 03 22 08:54:04
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C++ & C++ .NET

 > 

Divers

 > 

Débutant(e)

 > 

Random GMP


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

Random GMP

dimanche 30 juillet 2006 à 12:06:06 | Random GMP

chewbaka62

Membre Club
Bonjour,
Voici un code qui devrait (en principe) me générer un très grand nombre aléatoire ( compris entre 0 et 2^n-1). Le problème, c'est que chaque fois que j'exécute ce code, il me sort constamment le même nombre! Pourriez-vous me dire ce qui cloche dans le code?
#include <iostream>
#include <gmp.h>
#pragma comment (lib,"gmp.lib")
using namespace std;
int main()
{
    gmp_randstate_t alea;
    mpz_t nombre;
    mpz_init(nombre);
    int n;
    cout << "Entrez un nombre quelconque:" << endl;
    cin >> n;
    gmp_randinit_mt(alea);
    mpz_urandomb(nombre,alea,n);
    gmp_printf("\n%Zd\n",nombre);
    system("pause");
    return 0;
}
Merci d'avance,
Chewbaka
dimanche 30 juillet 2006 à 12:49:31 | Re : Random GMP

vecchio56

Administrateur CodeS-SourceS
Après ton gmp_randinit, ajoute cette ligne:
gmp_randseed_ui(alea, time(NULL));

_____________________________________
Un éditeur de ressources gratuit pour Windows

dimanche 30 juillet 2006 à 12:56:20 | Re : Random GMP

chewbaka62

Membre Club
Merci mais malheureusement, ça ne change rien.
Désolé
dimanche 30 juillet 2006 à 13:55:51 | Re : Random GMP

vecchio56

Administrateur CodeS-SourceS
Pour mes tests j'ai mis gmp_randinit_default(alea); à la place de gmp_randinit_mt(alea); (car je n'avais pas gmp_randinit_mt). Ca vient peut être de la. En tous cas j'ai des valeur différentes a chaque fois

_____________________________________
Un éditeur de ressources gratuit pour Windows

dimanche 30 juillet 2006 à 14:35:45 | Re : Random GMP

chewbaka62

Membre Club
Non, ça ne change rien mais une petite question me vient à l'esprit: si je me trompe pas, la fonction time donne le nombre de secondes écoulées depuis le 01/01/1970. Ne faut'il alors inclure un fichier en-tête ( genre time.h) et qu'implique l'argument NULL sur la fonction time?
Merci d'avance
dimanche 30 juillet 2006 à 16:15:47 | Re : Random GMP

vecchio56

Administrateur CodeS-SourceS
Réponse acceptée !
Oui j'ai include <ctime> mais si ca marche sans c'est qu'il le trouve.time(NULL) renvoie l'heure actuelle, qui est donc différente  chaque exécution

_____________________________________
Un éditeur de ressources gratuit pour Windows

dimanche 30 juillet 2006 à 16:32:32 | Re : Random GMP

chewbaka62

Membre Club
Ok merci,
Entretemps, j'ai réessayé et ça marche sans problème.
Merci


Cette discussion est classée dans : nombre, code, alea, gmp, mpz


Répondre à ce message

Sujets en rapport avec ce message

Nombre aléatoire en C [ par FoLKeN91 ] Bonjour tout le monde.Alors voici mon probleme, j'ai beau cherché je n'arrive pas à le résoudre. Je désire faire une fonction qui renvoie un nombre al [newbie] crée un fichier .h en C [ par CHKDSK2K ] Bonjour à tous, Je crée un fichier en c qui permet de verrifier si ce que l'on entre est bien un chiffre, mais je voudrais mettre se code dans les pro srand ? [ par sebleboss2002 ] Salut à tous ! Je débute complètement en C, et je suis en train d'essayer de coder un jeu du "plus ou moins". Mais j'ai un problème au niveau de la g Aide algorithmique TESTAGE !! [ par ZogStriP ] Bonjour tout le monde !!Je suis en train de faire le concours de PROLOGIN (www.prologin.org) et j'en suis au QCM 2004 n°4, mais là je bloque un peu!Je Une Variable étant un opérateur (Borland c++ Builder) [ par cricri_b34 ] j'ai créer un petit programme avec Borland c++ Builder qui permet de pratiquer ses math...donc mon programme doit vérifier si le nombre entré par l'ut Générer des Caractèeres aléatoirement [ par cricri_b34 ] Jaimerais apprendra comment générer des caractères aléatoirement:Pour générer des nombre, j'utilise:rand() % 100 + 1je sait qu Tutorial Librairie GMP [ par chewbaka62 ] Bonsoir,J'utilise depuis peu la librairie GMP sous VisualC++2005 mais je dois avouer que la documentation fournie sur le site www.swox.com n'est pas f code + C++ + nombre croissant + caractere entre les nombre 3+5+5 avec = et somme [ par pimash ] code + C++  + nombre croissant +  caractere entre les nombre 3+5+5 avec = et somme Affichage variables (printf) [ par dj_titeuf ] Bonjour, Ayant commencé à apprendre le langage C très récemment, j'ai pu voir (de façon partielle) l'utilisation de printf(). J'ai ainsi pu voir comm Windows plante {je sais pas nouveau } pour l'execution du mon code [ par darkwhite ] Salut a tous Je debute en C, et j'ai commencer a faire un petit programme. A la moitié de la creation je l'essaie mé windows me sort un message derreu


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mars 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728
293031    

Consulter la suite du CalendriCode

 
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,562 sec (3)

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