Partage
  • Partager sur Facebook
  • Partager sur Twitter

+ ou -

Sujet résolu
28 septembre 2008 à 12:06:13

salut ,

j'ai fais le debut d'un + ou - mais
j'ai pleins d'erreur que je comprend pas :

Image utilisateur

les codes :

#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#include <QApplication>
#include <QPushButton>
#include <QGridLayout>
#include <QtGui>
#include <QLineEdit>
#include <QFormLayout>

using namespace std;


int main(int argc, char *argv[])
{
    long   jouer       = 0 ;
    long   dificulte   = 0 ;
    long   vie         = 0 ;
    long   niveau      = 0 ;
    long   coup        = 0 ;
    long nombreMystere = 0, nombreEntre = 0;
    const long nombreMax = 100, nombreMin = 1;


    QApplication app(argc, argv);

    QWidget fenetre;

    /*--------------------------------------------------------
    --------------titres de la fenetres-----------------------
    ----------------------------------------------------------*/

    fenetre.setWindowTitle("Le Plus ou moin  v0.0");

    /*--------------------------------------------------------
    --------------------------MENU----------------------------
    ----------------------------------------------------------*/
    QLabel *label = new QLabel("Nombres de joueur.", &fenetre);
    QPushButton *bouton2 = new QPushButton("1 joueur.") ;
    QPushButton *bouton3 = new QPushButton("2 joueur.(ne marche pas)");

    /*--------------------------------------------------------
    -----------------Positionnements du menu------------------
    ----------------------------------------------------------*/
    QGridLayout *layout = new QGridLayout;
    layout->addWidget(label, 0, 0, 1, 3);
    layout->addWidget(bouton2, 1, 1);
    layout->addWidget(bouton3, 1, 2);

    /*------------------------------------------------------------*/
    /*----------------choix entre 1 et 2 joueurs -------------------
    --------------------------------------------------------------*/

    if (jouer == 1) // Si 1 joueur
{
    /*--------------------------------------------------------
    --------------------------MENU----------------------------
    ----------------------------------------------------------*/
    QLabel *label = new QLabel("choix du niveau .", &fenetre);
    QPushButton *bouton1 = new QPushButton("facil") ;
    QPushButton *bouton2 = new QPushButton("moyen");
    QPushButton *bouton3 = new QPushButton("dur");

    /*--------------------------------------------------------
    -----------------Positionnements du menu------------------
    ----------------------------------------------------------*/
    QGridLayout *layout = new QGridLayout;
    layout->addWidget(label, 0, 0, 1, 3);
    layout->addWidget(bouton1, 1, 1);
    layout->addWidget(bouton2, 2, 1);
    layout->addWidget(bouton3, 3, 1);


    /*-----------------------------------------------------------
    --------------------dificulter-------------------------------
    ------------------------------------------------------------*/
        if (dificulte == 1)

            {
                vie = 50 ;

            }

        else if(dificulte == 2 )
            {
                vie = 45;
            }
        else

            {
                vie = 40;
            }

    /*-------------------------------------------------------------
    -------------------LE JEU--------------------------------------
    --------------------------------------------------------------*/

    /*-----------------------Vie ---- niveau ----------------------*/
    QLabel *label1 = new QLabel("Coup restant :<<vie<<." , &fenetre);
    QLabel *label2 = new QLabel("Niveau : <<niveau<<", &fenetre);

    /*-----------------------Posotionnement----------------------------*/

        QGridLayout *layout = new QGridLayout;
        layout->addWidget(label1, 0, 0, 1, 3);
        layout->addWidget(label2),0,0 , 7 ,10 );

    /*------------------maintenant le jeu --------------------------------*/


    do
    {
            QLabel *label3 = new QLabel("entrez un nombre entre <<nombreMin<<et <<nombreMax<< " , &fenetre);
            QLineEdit *nombreEntre = new QLineEdit;

            layout->addWidget(label3, 2, 3);
            layout->addWidget(QLineEdit),3, 3);

            if ( nombreEntre < nombreMin || nombreEntre > nombreMax )

            {
                QLabel *label4 = new QLabel("vous devez entrez un nombre entre << nombreMin << et << nombreMax << " , &fenetre);
                layout->addWidget(label4) 4, 3);

            }

            else ( nombreEntre < nombreMystere )

            {
                QLabel *label5 = new QLabel(" c'est plus " , &fenetre);
                layout->addWidget(label5) 4, 3);
                vie -- ;
                coup ++ ;
            }

            else if ( nombreEntre > nombreMystere )

            {
                QLabel *label6 = new QLabel(" c'est moins " , &fenetre);
                layout->addWidget(label6) 4, 3);
                vie -- ;
                coup ++ ;
            }

            else if ( nombreEntre == nombreMystere )

            {
                QLabel *label7 = new QLabel(" ===========Niveau fini===========" , &fenetre);
                QLabel *label8 = new QLabel("en <<coup<<."!"  ,&fenetre);
                layout->addWidget(label7) 4, 3);
                layout->addWidget(label8) 5, 3);
                niveau ++ ;
                nombreMax +++++++++++++++++++++++++++++++++++++++++ ;
            }


    }
}

   else // Sinon 2 joueur

{
    printf ("c'est pas codé");
}



    fenetre.setLayout(layout);
    fenetre.show();

    return app.exec();
}

et faut faire comment pour que quand le joueur choisi 1 joueur , sa lance le jeu 1 joueur?
  • Partager sur Facebook
  • Partager sur Twitter
Anonyme
28 septembre 2008 à 12:37:02

Citation : edouard22

QGridLayout *layout = new QGridLayout;//67
[...]
QGridLayout *layout = new QGridLayout;//105
Tu crée deux variables du même nom.

Citation : edouard22

layout->addWidget(label2),0,0 , 7 ,10 );
Tu ferme plus de parenthèse que tu en ouvre (tu fais cette erreur souvent).

Citation : edouard22

layout->addWidget(QLineEdit),3, 3);
Idem, mais là en plus tu met le nom d'une classe en arguement o_O .

Citation : edouard22

if ( nombreEntre < nombreMin || nombreEntre > nombreMax )
nombreEntre est un pointeur de QLineEdit et nombreMin est const long.

Citation : edouard22

else ( nombreEntre < nombreMystere )
Tu as oublier le if.

Citation : edouard22

nombreMax +++++++++++++++++++++++++++++++++++++++++ ;
o_O

Corrige déjà tous ça.

<edit>Et plutôt que de faire une capture de la console, copie-colle le texte, c'est plus lisible qu'une image, c'est plus rapide à charger, et c'est plus rapide pour toi que d'héberger l'image.</edit>
  • Partager sur Facebook
  • Partager sur Twitter
28 septembre 2008 à 12:42:36

Sans vouloir t'offenser, je trouve ça... Comment dire... o_O
Tu as tout mis dans le main() !
De plus, on dirait (ce n'est peut-être pas vrai) que tu n'as pas suivi le cours.

Tu n'utilise pas de classes, tu ne sais pas à quoi servent les signaux et slots (principe fondamental de Qt4) etc...

Ca ne donne pas vraiment envie de lire ton code !
Ré-écris tout et je suis presque sur que tu n'auras pas (ou beaucoup moins) d'erreurs.

Cordialement.
  • Partager sur Facebook
  • Partager sur Twitter
Anonyme
28 septembre 2008 à 13:01:10

Citation : Naj

De plus, on dirait (ce n'est peut-être pas vrai) que tu n'as pas suivi le cours.

Si c'est vrai il n'a pas suivit le cour (ou alors très très trèèèès vite).

Mon préféré est celui avec les 8 ups.

<edit>

Citation : Naj

Sans vouloir t'offenser, je trouve ça... Comment dire... o_O

Indigeste ??
</edit>
  • Partager sur Facebook
  • Partager sur Twitter
28 septembre 2008 à 13:08:27

sa fais quoi que tout soi dans le main() ?
  • Partager sur Facebook
  • Partager sur Twitter
28 septembre 2008 à 13:10:29

Eh bien ton code est beaucoup moins facile à relire pour les autres :D
Et pout toi ça augmente les risques d'erreurs et c'est plus dur de modifier ton code :-°
  • Partager sur Facebook
  • Partager sur Twitter
Anonyme
28 septembre 2008 à 13:21:09

Citation : vince85

Eh bien ton code est beaucoup moins facile à relire pour les autres :D

Il est beaucoup plus dur à lire pour lui aussi.
  • Partager sur Facebook
  • Partager sur Twitter
28 septembre 2008 à 13:39:09

je dois relire quelle partie du cour ?
  • Partager sur Facebook
  • Partager sur Twitter
28 septembre 2008 à 14:09:38

Eh bien je te conseillerais de relire depuis le début de Qt si tu as bien compris les bases du C++.
Parce que sans les bases tu ne réussiras pas à programmer sous Qt ou n'importe quel GUI :-°
  • Partager sur Facebook
  • Partager sur Twitter
Anonyme
28 septembre 2008 à 14:11:33

Citation : vince85

si tu as bien compris les bases du C++.

C'est justement ça qui coince.
  • Partager sur Facebook
  • Partager sur Twitter
28 septembre 2008 à 21:52:29

Le message qui suit est une réponse automatique activée par un modérateur.
Les réponses automatiques permettent d'éviter aux modérateurs d'avoir à répéter de nombreuses fois la même chose, et donc de leur faire gagner beaucoup de temps.
Nous sommes néanmoins ouverts et si vous avez une question ou une remarque, n'hésitez pas à contacter le modérateur en question par MP.


Le titre du sujet est incorrect


Bonjour,



Ce sujet a un titre qui ne décrit pas correctement le sujet, ou le titre est en majuscules. Vous pouvez re-poster votre sujet en rectifiant ce point.

Voici quelques correspondances pour vous aider à choisir au mieux votre titre :


Merci de votre compréhension :)
Les modérateurs.
  • Partager sur Facebook
  • Partager sur Twitter