begin process at 2012 02 10 07:36:03
  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 nombre d'occurence des termes d'un fichier texte [ par mervat ] bonjour, ce programme permet de déterminer le nombre d'occurence de tous les termes dans un texte, j'ai créé une liste contenant les termes du texte,


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

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 : 4,867 sec (3)

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