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

Discussion :

Anagrammes, melange de lettres aléatoire

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Mars 2009
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2009
    Messages : 10
    Par défaut Anagrammes, melange de lettres aléatoire
    Bonjour à tous !! Petit souci pour la création d'anagrammes en c++, j'ai cherché partout mais je n'ai rien trouvé qui correspondait à mon cas. Voici mon code :


    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
    //********************* Séparer les lettres de ce mot *************************
    int position=0;
    //int nbLettres = motchoisi.length();
            while (position < 8)
            {QChar lettre = motchoisi[position];
     
                    switch (position)
                    {
                    case 0 : m_ui->b_lettre1->setText(lettre); break;
                    case 1 : m_ui->b_lettre2->setText(lettre); break;
                    case 2 : m_ui->b_lettre3->setText(lettre); break;
                    case 3 : m_ui->b_lettre4->setText(lettre); break;
                    case 4 : m_ui->b_lettre5->setText(lettre); break;
                    case 5 : m_ui->b_lettre6->setText(lettre); break;
                    case 6 : m_ui->b_lettre7->setText(lettre);
     
                    }
             position++;
            }
    Mon programme prend un mot de 7 lettres au hasard dans un lexique, puis il sépare les lettres de ce mot dans des PushButton. Comment lui dire d'afficher les lettres dans le désordre ?? et de façon aléatoire ?? Avec rand je n'y arrive pas du tout... Merki !!

  2. #2
    yan
    yan est déconnecté
    Rédacteur
    Avatar de yan
    Homme Profil pro
    Ingénieur expert
    Inscrit en
    Mars 2004
    Messages
    10 035
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur expert
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2004
    Messages : 10 035
    Par défaut
    je pense que tu peut utiliser l'algo random_shuffle sur une QSTring

    http://r0d.developpez.com/articles/a....php/#LII-B-11

    [edit]
    ca marche
    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
     
    #include <QtCore>
    #include <algorithm>
     
     
    int main(int argc, char **argv)
    {
       for (int i=0; i < 10 ;++i)
       {
    	   QString s("anagramme");
    	   std::random_shuffle(s.begin(),s.end());
    	   qDebug() <<s;
       }
       return 0;
    }

  3. #3
    Membre habitué
    Profil pro
    Inscrit en
    Mars 2009
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2009
    Messages : 10
    Par défaut
    Merci de m'avoir répondu ! Donc ça il faudrait que je le fasse avant mon switch, c'est bien ça ?
    J'ai un petit souci :
    error: `random_shuffle' was not declared in this scope
    10: random_shuffle: No such file or directory
    Ou faut-il que je le déclare ??

  4. #4
    yan
    yan est déconnecté
    Rédacteur
    Avatar de yan
    Homme Profil pro
    Ingénieur expert
    Inscrit en
    Mars 2004
    Messages
    10 035
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations professionnelles :
    Activité : Ingénieur expert
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Mars 2004
    Messages : 10 035
    Par défaut
    c'est dans
    #include <algorithm>

  5. #5
    Membre habitué
    Profil pro
    Inscrit en
    Mars 2009
    Messages
    10
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2009
    Messages : 10
    Par défaut
    Ok ! Bon, j'avais pas très bien compris, du coup j'ai trouvé une autre solution qui marche :

    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
    20
    21
    22
    23
    24
    25
    26
    27
    28
    QString DialogJeu::melange(QString motchoisi)
    {
        QString resultat = motchoisi;
        for(int n=0 ; n < 100 ; n++) {
            int p1 = rand() % motchoisi.length();
            int p2 = rand() % motchoisi.length();
            QChar temp = resultat[p1];
            resultat[p1] = resultat[p2];
            resultat[p2] = temp;
        }
     
        int position = 0;
           while (position < motchoisi.length()){
            QChar lettre = resultat[position];
            switch (position) {
                case 0 : m_ui->b_lettre1->setText(lettre); break;
                case 1 : m_ui->b_lettre2->setText(lettre); break;
                case 2 : m_ui->b_lettre3->setText(lettre); break;
                case 3 : m_ui->b_lettre4->setText(lettre); break;
                case 4 : m_ui->b_lettre5->setText(lettre); break;
                case 5 : m_ui->b_lettre6->setText(lettre); break;
                case 6 : m_ui->b_lettre7->setText(lettre);
     
             }
            position++;
            }
        return resultat;
    }
    Merci beaucoup en tout cas !

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

Discussions similaires

  1. Réponses: 19
    Dernier message: 29/08/2012, 22h49
  2. Lire des lettres aléatoirement à partir d'un fichier .txt
    Par selma89 dans le forum Entrée/Sortie
    Réponses: 4
    Dernier message: 15/09/2011, 13h51
  3. Variable et lettre aléatoire
    Par Hunty dans le forum ActionScript 1 & ActionScript 2
    Réponses: 2
    Dernier message: 03/06/2011, 10h32
  4. tirage de lettres aléatoire
    Par pounette6431 dans le forum Débuter
    Réponses: 7
    Dernier message: 06/03/2009, 22h25
  5. Génération de lettres aléatoires
    Par rolls dans le forum VB 6 et antérieur
    Réponses: 3
    Dernier message: 27/10/2008, 13h51

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