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 :

Morpion - Problème conditions de boucles


Sujet :

C++

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2013
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2013
    Messages : 2
    Par défaut Morpion - Problème conditions de boucles
    Bonjour,

    Je suis en train de coder un morpion seulement j'ai un gros soucis que je n'arrive pas à régler

    Voici mon code pour le moment :

    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
    #include <myconio.h>
    #include <stdio.h>
    #include <stdlib.h>
     
    int main(){
        int i,ligne,colonne;
        bool gagne=0;
     
        //Affichage de la grille
        for(i=0;i<7;i++){
            if(i%2==0){
                gotoxy(5,5+i);
                printf(" -----------\n");
            }
            else{
                gotoxy(5,5+i);
                printf("|   |   |   |\n");
            }
        }
     
        //Saisie et affichage des choix des joueurs
        //while(!gagne){
        gotoxy(2,9+i);
        printf("C'est au tour du joueur 1 :");
        gotoxy(5,10+i);
        printf("Ligne   = ");
        gotoxy(5,11+i);
        printf("Colonne = ");
     
        //Saisie du numero de ligne
        do{
            gotoxy(17,10+i);
            scanf("%d",&ligne);
            if(ligne <= 1 && ligne >= 3){
                gotoxy(17,10+i);
                printf(" "); //Ne pas afficher la variable à l'ecran si la saisie est fausse
            }
        }while(ligne<1 && ligne>3);
     
        //Saisie du numéro de colonne
        do{
            gotoxy(17,11+i);
            scanf("%d",&colonne);
            if(colonne>=1 && colonne<=3){
                gotoxy(17,11+i);
                printf(" "); //Ne pas afficher la variable à l'ecran si la saisie est fausse
            }
        }while(colonne<1 && colonne>3);
        return 0;
    }
    Quand je test ma saisie, même si le nombre est supérieur à 3, je sors de la boucle, que ce soit pour la saisie des lignes ou des colonnes et je n'arrive pas à comprendre pourquoi, mes conditions m'ont l'air bonnes

    Merci d'avance pour votre aide

  2. #2
    Membre averti
    Inscrit en
    Février 2010
    Messages
    27
    Détails du profil
    Informations forums :
    Inscription : Février 2010
    Messages : 27
    Par défaut
    Non, tes conditions ne sont pas bonnes.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    (colonne<1 && colonne>3)
    est toujours faux.

    Si tu veux un nombre entre 1 et 3 inclus :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    (colonne>=1 && colonne<=3)
    Sinon,
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    (colonne<1 || colonne>3)

  3. #3
    Nouveau candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mars 2013
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 32
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2013
    Messages : 2
    Par défaut
    Ton code

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    (colonne>=1 && colonne<=3)
    ne fait pas ce que je veux faire. En fait je veux que la saisie des lignes et des colonnes soit comprise entre 1 et 3 inclus, donc il faut sortir de la boucle quand les valeurs de ligne (puis de colonne) sont comprises dans cet intervalle.


    Par contre, celui-ci fonctionne:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    (colonne<1 || colonne>3)
    Ainsi que la négation de ton premier code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    (!(colonne>=1 && colonne<=3))


    Merci

Discussions similaires

  1. Probléme condition et boucle
    Par Progmeur dans le forum C++
    Réponses: 4
    Dernier message: 15/03/2013, 10h07
  2. [Débutant] problème condition boucle while
    Par doudou47 dans le forum VB.NET
    Réponses: 20
    Dernier message: 09/05/2012, 11h03
  3. [Toutes versions] Problème choix et condition de boucle
    Par mentat dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 06/02/2012, 16h56
  4. Problème condition d'arrêt boucles while et for
    Par Clairette29 dans le forum MATLAB
    Réponses: 2
    Dernier message: 25/06/2008, 11h51
  5. [Tableaux] Problème avec les boucles
    Par speed_man002 dans le forum Langage
    Réponses: 4
    Dernier message: 21/09/2005, 15h42

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