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 :

Existe t'il un nombre maximum de boucles à imbriquer en C++


Sujet :

C++

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé Avatar de Gilles57-H-G
    Profil pro
    Inscrit en
    Novembre 2010
    Messages
    88
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2010
    Messages : 88
    Par défaut Existe t'il un nombre maximum de boucles à imbriquer en C++
    Bonjour.
    Ce code contient 5 boucles imbriquées, je ne comprend pas pourquoi les boucles s'incrémentent dans le premier passage.

    Normalement je devrais avoir au centre des boucles imbriquées la valeur de chaque variable à 0 , ce n'est pas le cas.

    J'ai fait l'expérience avec 3 boucles cela fonctionne parfaitement, pourquoi si j'en rajoute, cela ne fonctionne pas ?

    Commentaire dans le 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
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    #include   <string>
    #include   <cstdlib>
    #include   <cstring>
    #include   <cctype>
    #include   <cwchar> 
    #include   <iostream>
     
    using namespace std;
     
    int main()
    { 
         int ii; 
        long cont;
         cont = 0;
     
         int a;
         int b;
         int c;
         int d;
         int e;
         int f;
         int g;
         int h;
         int i;
         int j;
     
     
     
       string mot;
     
         string lt1;
         string lt2;
         string lt3;
         string lt4;
         string lt5;
         string lt6;
         string lt7;
         string lt8;
         string lt9;
         string lt10;
     
         int taille;
         string chaine;
     
         chaine = "ABCDE";         // Chaine de caractere
         taille = chaine.length();
     
          string t1[taille];
          string t2[taille];
          string t3[taille];
          string t4[taille];
          string t5[taille];
          string t6[taille];
          string t7[taille];
          string t8[taille];
          string t9[taille];                      
          string t10[taille];
     
     
             for (ii=0; ii<taille; ii++)   // Rempli des tableaux avec la chaine chaine 
     
          {
                    t1[ii] = chaine.substr(ii,1);
                    t2[ii] = chaine.substr(ii,1);
                    t3[ii] = chaine.substr(ii,1);
                    t4[ii] = chaine.substr(ii,1);
                    t5[ii] = chaine.substr(ii,1);
                    t6[ii] = chaine.substr(ii,1);
                    t7[ii] = chaine.substr(ii,1);
                    t8[ii] = chaine.substr(ii,1);
                    t9[ii] = chaine.substr(ii,1);
                    t10[ii] = chaine.substr(ii,1);
     
                                                          }
     
       for(e=0; e<taille; e++)
         {
           for(d=0; d<taille; d++)
              {
                for(c=0; c<taille; c++)
                  {
                    for(b=0; b<taille; b++)
                     {
                        for(a=0; a<taille; a++)
                         {
                            cout<<t5[e]<<t4[d]<<t3[c] <<t2[b]<<t1[a]<<endl;
                   // Devrait  afficher chaque élément du tableau à l'indice 0
                  //   (au premier passage)
                            cout<<e<<d<<c<<b<<a<<endl;
    //Affiche les variables normalement cela devrait être 0000 au premier passage
                            cont++;
     
                          }
                      }
                  }
               }
            }     
     
             cout<< "Il y a "<<cont<<" entrées"<<endl;                               
     
     
     system("PAUSE");
        return EXIT_SUCCESS;
     
    }

  2. #2
    gl
    gl est déconnecté
    Rédacteur

    Homme Profil pro
    Inscrit en
    Juin 2002
    Messages
    2 165
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Juin 2002
    Messages : 2 165
    Par défaut
    Au premier passage, ce code affiche bien :

    AAAAA
    00000
    Je ne vois pas le problème. Qu'obtiens-tu ? Et surtout comment fais-tu ton test ?

  3. #3
    Membre confirmé Avatar de Gilles57-H-G
    Profil pro
    Inscrit en
    Novembre 2010
    Messages
    88
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2010
    Messages : 88
    Par défaut
    Dingue, chez moi je colle le code au dessus dans un compilateur cela donne en premiere ligne

    EDEAB
    43401

    J'utilise DevCpp pour compiler

    je vais en chercher un autre, as tu un conseil en la matière de compilateur console libre.

  4. #4
    gl
    gl est déconnecté
    Rédacteur

    Homme Profil pro
    Inscrit en
    Juin 2002
    Messages
    2 165
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Juin 2002
    Messages : 2 165
    Par défaut
    Citation Envoyé par Gilles57-H-G Voir le message
    Dingue, chez moi je colle le code au dessus dans un compilateur cela donne en premiere ligne

    EDEAB
    43401
    Il ne s'agit pas d'un problème du compilateur.

    Ce que tu lis n'est pas le résultat de la première itération des boucles mais la première ligne encore présente dans la console à la fin de l'exécution (la console conserve un nombre limité de lignes).
    Met une pause après l'affichage de la ligne et observe le résultat.

    Ceci étant, Dev-C++ est assez ancien et n'est plus supporté. Sous windows, à titre personnel, j'utilise soit code::blocks+mingw soit la version express de visual.

  5. #5
    Membre confirmé Avatar de Gilles57-H-G
    Profil pro
    Inscrit en
    Novembre 2010
    Messages
    88
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2010
    Messages : 88
    Par défaut
    "Met une pause après l'affichage de la ligne et observe le résultat."

    Je saisi pas vraiment.

    Ceci dit, je pensait écrire un fichier texte avec les itération des boucles, c'est je pense ce que je vais faire.

    Merci encore

  6. #6
    gl
    gl est déconnecté
    Rédacteur

    Homme Profil pro
    Inscrit en
    Juin 2002
    Messages
    2 165
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Juin 2002
    Messages : 2 165
    Par défaut
    Citation Envoyé par Gilles57-H-G Voir le message
    "Met une pause après l'affichage de la ligne et observe le résultat."

    Je saisi pas vraiment.
    Appelles system("PAUSE"), une lecture clavier ou mets un point d'arrêt en debug. Bref fais en sorte que l'exécution s'arrête après l'affichage de la première itération et regarde ce qu'affiche à ce moment le programme.

    Citation Envoyé par Gilles57-H-G Voir le message
    Ceci dit, je pensait écrire un fichier texte avec les itération des boucles, c'est je pense ce que je vais faire.
    Ça fonctionne aussi.

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

Discussions similaires

  1. Existe t-il un nombre de page maximum pour un notebook ?
    Par skip78 dans le forum GTK+ avec C & C++
    Réponses: 12
    Dernier message: 24/04/2009, 16h33
  2. Nombre maximum de connexions acceptées par postgresql
    Par kaikai dans le forum PostgreSQL
    Réponses: 2
    Dernier message: 26/08/2008, 10h29
  3. Quel est le nombre maximum de boucles imbriquées (C, Java, Fortran) ?
    Par torNAdE dans le forum Langages de programmation
    Réponses: 13
    Dernier message: 28/06/2007, 16h18
  4. Nombre maximum de fichiers ouverts par processus
    Par galinoo dans le forum Windows
    Réponses: 3
    Dernier message: 27/10/2004, 17h47
  5. Nombre maximum de textures
    Par venomelektro dans le forum OpenGL
    Réponses: 7
    Dernier message: 02/09/2004, 15h54

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