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

MFC Discussion :

[C++]pb de rand


Sujet :

MFC

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 9
    Par défaut [C++]pb de rand
    Bonjour,
    mon problème est d'insérer dans un tableau "tab" des nombres aléatoires compris entre 0 et "nbV"(saisie par l'utilisateur) mais il ne faut pas de doublon donc vérifier si le nombre existe déjà dans le tableau.
    J'ai tapé le code suivant qui ne fait pas d'erreur mais qui ne me supprime pas les doublons.
    Merci si quelqu'un peut m'aider.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    int trouve;
    int tmp=0;
    int k=0;
    for(i=0;i<nbV;i++)
    {
          tmp = ((int)(rand()%(cpt-1+1)));
          for(j=0;j<=i;j++)
                if(tmp==tab[j]) trouve=1;
          while(trouve==1)
          {
             tmp = ((int)(rand()%(cpt-1+1)));
             for(j=0;j<=i;j++)
                 {
                   if(tmp==tab[j]) trouve=1;
                   else trouve=0;
                 }
          }
    tab[i]=tmp;
    }

  2. #2
    Membre Expert
    Avatar de la drogue c'est mal
    Profil pro
    Inscrit en
    Novembre 2002
    Messages
    2 253
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2002
    Messages : 2 253
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
     
    std::set<int> setInteger;
     
    while( setInteger.size() <= nbV )
    {
         setInteger.insert(static_cast<int>( rand()%(cpt) ) ); // j'ai pas pigé le coup du -1 +1 ????
    }
    avec ca tu devrais te retrouver avec une liste sans doublons (code fait à la volé non tester )

Discussions similaires

  1. rand
    Par bibile dans le forum Requêtes
    Réponses: 11
    Dernier message: 23/04/2005, 21h47
  2. Erreur de Rand avec Microsoft visual c++ 6.0
    Par yoadsl dans le forum Visual C++
    Réponses: 9
    Dernier message: 15/03/2005, 20h59
  3. Pb de rand() qui tourne en boucle
    Par MadChris dans le forum MFC
    Réponses: 3
    Dernier message: 26/06/2004, 16h24
  4. Probleme de tirage avec rand ?
    Par sunshine33 dans le forum MFC
    Réponses: 5
    Dernier message: 14/01/2004, 15h57
  5. rand
    Par drKzs dans le forum C
    Réponses: 6
    Dernier message: 21/09/2003, 16h39

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