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 :

[Valeur aléatoire] Problème avec rand()


Sujet :

C++

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2004
    Messages
    209
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2004
    Messages : 209
    Par défaut [Valeur aléatoire] Problème avec rand()
    Salute,

    A chaque fois que je veux générer une valeur aléatoire (rand())c'est toujours la même valeur qui me revient: 1804289383

    J'ai beau tester 20 fois, c'est toujours cette valeur qui revient.

    Je programme sous linux, quand je programme sur Windows je n'ai pas de problème avec cette fonction donc je ne vois pas comment faire ?

    Si quelqu'un a une idée, .. thanks

    Système d'exploitation : Debian 3.1 Sarge
    Compilateur : g++

  2. #2
    Membre chevronné
    Profil pro
    Enseignant
    Inscrit en
    Avril 2004
    Messages
    440
    Détails du profil
    Informations personnelles :
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Avril 2004
    Messages : 440
    Par défaut
    Euh... Je vois pas trop là... ça veut sans doute dire que dans ton programme tu initialises toujours une variable qui influe sur ton rand... ??

    Donne ton code pour voir...

    A+

  3. #3
    Membre émérite

    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2005
    Messages
    634
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Suisse

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2005
    Messages : 634

  4. #4
    Membre éprouvé Avatar de Blowih
    Profil pro
    Inscrit en
    Octobre 2003
    Messages
    122
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2003
    Messages : 122
    Par défaut
    Bonjour,
    pour moi ça peut venir de 2 chose:
    1.
    si tu a un rand() dans ton programme et que tu lance ton programme 20 fois, c normal que tu obtienne toujours la meme valeur, il faut initialiser le rand() avec srand(...)
    voila un bout de pseudo code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     long time = temps_machine_en_seconde();
    srand (time);
    ...
    rand(); // produira de vrai valeur pseudo aleatoire ;o)
    si tu initialise srand toujours avec la meme valeur, tu retombe dans le probleme, c'est là qu'il est judicieu d'utiliser le temps pour initialiser srand

    2.
    si tu fais dans ton programme rand dans une boucle , il ne faut as faire de srand avant chaque rand.

    le srand est a faire une seule fois dans ton programme.

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Juin 2004
    Messages
    209
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2004
    Messages : 209
    Par défaut
    Thanks !! Résolu

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Problème avec rand
    Par Yodestarn dans le forum C
    Réponses: 3
    Dernier message: 25/03/2014, 22h19
  2. Réponses: 2
    Dernier message: 14/03/2014, 14h27
  3. Somme de valeurs et problème avec les variables
    Par med.ycf dans le forum Pascal
    Réponses: 4
    Dernier message: 11/03/2014, 17h27
  4. [MySQL] Problème avec Rand()
    Par Narutosaad dans le forum PHP & Base de données
    Réponses: 4
    Dernier message: 23/07/2010, 15h45
  5. problème avec une valeur decimal
    Par vbcasimir dans le forum Langage
    Réponses: 2
    Dernier message: 11/10/2005, 13h52

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