IdentifiantMot de passe
Loading...
Mot de passe oubli� ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les r�ponses en temps r�el, voter pour les messages, poser vos propres questions et recevoir la newsletter

C++ Discussion :

Nombre al�atoire initialisation microseconde


Sujet :

C++

  1. #1
    Membre confirm�
    Profil pro
    �tudiant
    Inscrit en
    Novembre 2005
    Messages
    97
    D�tails du profil
    Informations personnelles :
    �ge : 39
    Localisation : France

    Informations professionnelles :
    Activit� : �tudiant

    Informations forums :
    Inscription : Novembre 2005
    Messages : 97
    Par d�faut Nombre al�atoire initialisation microseconde
    bonjour,

    Dans mon projet j'ai besoin de faire bouger des fourmis al�atoirement, j'ai donc bedoin de g�n�rer un nombre al�atoire diff�rent toutes les micro secondes au moins.

    time(NULL) //nombre de seconde depuis le 1er janvier 1970 pas assez pr�cis

    avez vous une id�e?

    merci

  2. #2
    Membre confirm�
    Profil pro
    �tudiant
    Inscrit en
    Novembre 2005
    Messages
    97
    D�tails du profil
    Informations personnelles :
    �ge : 39
    Localisation : France

    Informations professionnelles :
    Activit� : �tudiant

    Informations forums :
    Inscription : Novembre 2005
    Messages : 97
    Par d�faut
    J'ai oubli� de dire que suis sous linux.

    merci

  3. #3
    Expert �minent
    Avatar de M�dinoc
    Homme Profil pro
    D�veloppeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 397
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 41
    Localisation : France

    Informations professionnelles :
    Activit� : D�veloppeur informatique
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 397
    Par d�faut
    nombres vraiment al�atoires, ou pseudo-al�atoires suffisent ?
    rand() toutes les microsecondes, initialis�s une fois au d�but du process par srand(time(NULL))...
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parl� avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  4. #4
    Expert confirm�
    Avatar de Luc Hermitte
    Homme Profil pro
    D�veloppeur informatique
    Inscrit en
    Ao�t 2003
    Messages
    5 296
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyr�n�es)

    Informations professionnelles :
    Activit� : D�veloppeur informatique
    Secteur : A�ronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Ao�t 2003
    Messages : 5 296
    Par d�faut
    o_O
    FAQ C ?
    Blog|FAQ C++|FAQ fclc++|FAQ Comeau|FAQ C++lite|FAQ BS|Bons livres sur le C++
    Les MP ne sont pas une hotline. Je ne r�ponds � aucune question technique par le biais de ce m�dia. Et de toutes fa�ons, ma BAL sur dvpz est pleine...

  5. #5
    Membre confirm�
    Profil pro
    �tudiant
    Inscrit en
    Novembre 2005
    Messages
    97
    D�tails du profil
    Informations personnelles :
    �ge : 39
    Localisation : France

    Informations professionnelles :
    Activit� : �tudiant

    Informations forums :
    Inscription : Novembre 2005
    Messages : 97
    Par d�faut
    je m'explique mieux :

    time(NULL) retourne le nombre de seconde et non microseconde (j'ai r�ussi � avoir des milli mais �a ne suffit pas en effet un processeur existe une fonction en moins de 1 milliseconde)

    srand (time(NULL)) initialise la chaine de nombre al�atoire le pb c'est que time(NULL) change que toutes les secondes !!!!

    J'ex�cute une fonction de d�placement dans une liste d'�lement qui � chaque ex�cution doit cr�er un nombre al�atoire mais la boucle pour par exemple 1000 �lements sera termin�e en moins d'une milliseconde c'est sur donc tous mes elements auront eu le meme nombre al�atoire.

  6. #6
    Membre confirm�
    Profil pro
    �tudiant
    Inscrit en
    Novembre 2005
    Messages
    97
    D�tails du profil
    Informations personnelles :
    �ge : 39
    Localisation : France

    Informations professionnelles :
    Activit� : �tudiant

    Informations forums :
    Inscription : Novembre 2005
    Messages : 97
    Par d�faut
    dsl si je suis pas super clair mais je n'ai pas bcp dormit cette nuit � cause de mon projet

  7. #7
    Expert confirm�
    Avatar de Luc Hermitte
    Homme Profil pro
    D�veloppeur informatique
    Inscrit en
    Ao�t 2003
    Messages
    5 296
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyr�n�es)

    Informations professionnelles :
    Activit� : D�veloppeur informatique
    Secteur : A�ronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Ao�t 2003
    Messages : 5 296
    Par d�faut
    J'avais donc parfaitement intuit� ton probl�me.
    Remplace le "?" par "!" dans mon pr�c�dent message.
    Blog|FAQ C++|FAQ fclc++|FAQ Comeau|FAQ C++lite|FAQ BS|Bons livres sur le C++
    Les MP ne sont pas une hotline. Je ne r�ponds � aucune question technique par le biais de ce m�dia. Et de toutes fa�ons, ma BAL sur dvpz est pleine...

  8. #8
    Expert �minent
    Avatar de M�dinoc
    Homme Profil pro
    D�veloppeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 397
    D�tails du profil
    Informations personnelles :
    Sexe : Homme
    �ge : 41
    Localisation : France

    Informations professionnelles :
    Activit� : D�veloppeur informatique
    Secteur : High Tech - �diteur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 397
    Par d�faut
    Citation Envoy� par ederf
    je m'explique mieux :
    Pas tellement, en fait..
    time(NULL) retourne le nombre de seconde et non microseconde
    En effet, mais on s'en fiche, puisque je propose de ne l'appeler qu'une seule fois au d�but du process. C'est quand m�me dingue que le gras n'ait pas suffit...
    (j'ai r�ussi � avoir des milli mais �a ne suffit pas en effet un processeur existe une fonction en moins de 1 milliseconde)
    OSEF.
    srand (time(NULL)) initialise la chaine de nombre al�atoire
    Ben oui, une cha�ne de nombres pseudo-al�atoires. Ce qui veut dire, plusieurs...
    le pb c'est que time(NULL) change que toutes les secondes !!!!
    OSEF, voir plus haut.
    J'ex�cute une fonction de d�placement dans une liste d'�lement qui � chaque ex�cution doit cr�er un nombre al�atoire mais la boucle pour par exemple 1000 �lements sera termin�e en moins d'une milliseconde c'est sur donc tous mes elements auront eu le meme nombre al�atoire.
    Ben non, chaque appel de rand() donne un nombre pseudo-al�atoire diff�rent, sauf bien s�r si quelqu'un est assez abruti pour rappeler srand() � chaque it�ration... Mais personne n'est assez con pour faire �a, n'est-ce paaaaaaas ?
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parl� avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  9. #9
    Membre confirm�
    Profil pro
    �tudiant
    Inscrit en
    Novembre 2005
    Messages
    97
    D�tails du profil
    Informations personnelles :
    �ge : 39
    Localisation : France

    Informations professionnelles :
    Activit� : �tudiant

    Informations forums :
    Inscription : Novembre 2005
    Messages : 97
    Par d�faut
    merci pour l'explication,

    bon c'�tait pas si simple que �a je travaille en objet et vraiment pas eu l'id�e d'initilisialiser ma variable al�atoire dans une autre classe que l� o� je fais ma strategie de d�placement (une erreur de jeunesse surement)

    si je peux me permettre une remarque, c'est dommage les insultes "con" pour un forum aussi riche que devellopez.net et avec autant de renomm�.


    merci quand meme

+ R�pondre � la discussion
Cette discussion est r�solue.

Discussions similaires

  1. p'tite question de cryptage ( nombre al�atoire )
    Par smyley dans le forum Algorithmes et structures de donn�es
    R�ponses: 53
    Dernier message: 08/11/2004, 10h07
  2. Nombres al�atoires
    Par Mat 74 dans le forum Assembleur
    R�ponses: 20
    Dernier message: 29/08/2004, 13h31
  3. R�ponses: 2
    Dernier message: 26/01/2004, 14h20
  4. Nombre al�atoire en SQL
    Par sqlnet dans le forum Langage SQL
    R�ponses: 8
    Dernier message: 19/08/2003, 12h38
  5. G�n�rer un nombre al�atoire entre 0 et 1 (INCLUS !!!)
    Par haypo dans le forum Algorithmes et structures de donn�es
    R�ponses: 3
    Dernier message: 22/08/2002, 16h30

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo