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 :

Pas d'incr dans for ?


Sujet :

C++

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Septembre 2015
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Septembre 2015
    Messages : 8
    Points : 9
    Points
    9
    Par défaut Pas d'incr dans for ?
    Bonsoir à tous,

    J'ai un soucis avec le code ci-dessous. Je n'ai pas d'erreur à la compilation mais ma variable ligne ne s'incrémente pas et je ne comprends pas pourquoi. Pouvez-vous m'éclairer ?
    Ne chercher pas un sens au programme, j'essaie juste de maîtriser les boucles en mettant plusieurs boucles pour afficher un X géant.

    Si j'affiche la valeur de ligne après le saut de ligne qui suit le premier if, ça me renvoie zéro. Si j'ajoute ++ligne; au même endroit, ça fonctionne bien. Donc pourquoi elle ne s'incrémente pas la vilaine ?

    Merci à vous

    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
    #include <iostream>
     
    using namespace std;
     
    /* X   X
        X X
         X
        X X
       X   X */
     
    int main()
    {
        char x = 'X';
        char b = ' ';
        cout << endl;
        for (int ligne(0); ligne < 5; ++ligne) {
            if (ligne == 0) {
                cout << x;
                for (int blanc(0); blanc < 3; ++blanc) {
                    cout << b;
                }
                cout << x << endl;
            }
            if (ligne == 1) {
                for (int xb(0); xb < 2; ++xb) {
                    cout << b;
                    cout << x;
                }
                cout << endl;
            }
            if (ligne == 2) {
                for (int blancg(0); blancg < 2; ++blancg) {
                    cout << b;
                }
                cout << x;
                for (int blancd(0); blancd < 2; ++blancd) {
                    cout << b;
                }
                cout << endl;
            }
        return 0;
        }
    }

  2. #2
    Rédacteur/Modérateur


    Homme Profil pro
    Network game programmer
    Inscrit en
    Juin 2010
    Messages
    7 115
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : Canada

    Informations professionnelles :
    Activité : Network game programmer

    Informations forums :
    Inscription : Juin 2010
    Messages : 7 115
    Points : 32 967
    Points
    32 967
    Billets dans le blog
    4
    Par défaut
    Dans la mesure où tu fais un return qui sort de la boucle (et termine le programme..) dès sa première itération, tu n'as aucune chance d'en faire une seconde et de voir ligne s'incrémenter.
    Pensez à consulter la FAQ ou les cours et tutoriels de la section C++.
    Un peu de programmation réseau ?
    Aucune aide via MP ne sera dispensée. Merci d'utiliser les forums prévus à cet effet.

  3. #3
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Septembre 2015
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Septembre 2015
    Messages : 8
    Points : 9
    Points
    9
    Par défaut
    j'avoue avoir cherché la solution uniquement près de la première condition en relisant 500000 fois comment on construisait des boucles ^^'

    c'était tellement évident.

    merci beaucoup, je ferais plus attention à l'avenir.

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

Discussions similaires

  1. TRIGGER - DELETE dans FOR UPDATE ne passe pas dans INSTEAD OF DELETE
    Par stephane.julien dans le forum MS SQL Server
    Réponses: 19
    Dernier message: 22/06/2011, 13h54
  2. PAS de -1 dans une boucle FOR
    Par Benjycool dans le forum Macros et VBA Excel
    Réponses: 5
    Dernier message: 07/02/2009, 00h28
  3. Réponses: 3
    Dernier message: 28/01/2004, 10h46
  4. Je ne retrouve pas ma SP dans Query analyser
    Par WOLO Laurent dans le forum MS SQL Server
    Réponses: 4
    Dernier message: 14/07/2003, 12h43
  5. Pas de casse dans les XML
    Par :GREG: dans le forum Composants VCL
    Réponses: 4
    Dernier message: 17/07/2002, 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