Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
721 connectés 

  FORUM HardWare.fr
  Programmation
  C++

  [C/C++] Problemme de remplissage de tableau....

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[C/C++] Problemme de remplissage de tableau....

n°317047
djfm
Posté le 25-02-2003 à 07:37:54  profilanswer
 

Mon programme vise a terme a etre un jeu de tarrot.
J'ai créé une classe JOUEUR definie comme suit :  
 
typedef struct{
               int carte[15];
               bool vide;
               }Cb;
typedef struct{
               int carte[22];
               bool vide;
               }Atout;
class JOUEUR
      {
       public:
       Cb carreau;
       Cb coeur;
       Cb pique;
       Cb treffle;
       Atout atouts;
       public:
       void prend_carte(int couleur,int carte,int place);      
      };
 
la fonction prend_carte() range la carte n° carte de la couleur couleur dans la case place du tableau de cette couleur.
Voici la fonction:
 
void JOUEUR::prend_carte(int couleur,int carte,int place)
     {
     
               if(couleur==5)
                             {
                              atouts.carte[place]=carte;
                             }
                         else
                            {
                             if(couleur==1)
                                carreau.carte[place]=carte;
                             if(couleur==2)
                                coeur.carte[place]=carte;
                             if(couleur==3)
                                pique.carte[place]=carte;
                             if(couleur==4)
                                treffle.carte[place]=carte;
                            }
             
               
     
                 
     }
 
Je veux ensuite remplir de 0 tous les jeux des joueurs , j'en ai crees 2 , JOUEUR p,TAROT;
 
Pour p , tout se passe bien , alors que TAROT se remplit de chiffres aleatoirement , c'est pourtant exactementr la meme fonction utilisee , je n'y comprend plus rien....
 
for(i=0;i<=21;i++)
          {
           if(i<=14)
                    {
                     for(j=1;j<=5;j++){
                         p.prend_carte(j,0,i);}
                         TAROT.prend_carte(j,0,i);
                    }
           else
               {
                p.prend_carte(5,0,i);
                TAROT.prend_carte(5,0,i);
               }
 
merci de m'aider , je sais qu'il n'est pas tres correct de poster de longues portions de code , mais je ne vois pas comment expliquer mon pb plus simplement . et la je seche.
davance merci


---------------
Do you serve a purpose,Or purposely serve?
mood
Publicité
Posté le 25-02-2003 à 07:37:54  profilanswer
 

n°317128
gloop
Posté le 25-02-2003 à 10:03:52  profilanswer
 

ton code etant pas super lisible, j'ai pas trop lu, mais dans ton

Code :
  1. for(j=1;j<=5;j++){
  2.      p.prend_carte(j,0,i);}
  3.      TAROT.prend_carte(j,0,i);


t'es sur que l'accolade fermante est bien placée?
 
sinon, ta structure de donnée est pas top, essaie de voir pour faire mieux
 
dans ta fonction prend_carte, un switch (couleur) serait beaucoup plus simple.
 
PS: mets des balises cpp autour de tes portions de code plz

n°317138
YungMakko
Posté le 25-02-2003 à 10:14:05  profilanswer
 

:hello:  
Ne pas oublier qu'en C++ une struct ou une class c'est la même chose (sauf que par défaut, dans une struct, en l'abscense de specifier, tous les members sont public au lieu d'être privés comme avec une class).
Donc pas la peine d'ecrire:

Code :
  1. typedef struct{
  2.               int carte[15];
  3.               bool vide;
  4.               }Cb;


Il suffit de faire:

Code :
  1. struct Cb {
  2. int carte[15];
  3. bool vide;
  4. };


 
Puis d'utiliser l'Object Cb, comme tu le fais avec un object définit par "class".

n°317975
djfm
Posté le 26-02-2003 à 08:32:06  profilanswer
 

Comment puis-je etre aussi con?
mdr merci ct tt simplement laccolade mal placee.
merci pr tt et dsl pr les balises [Cpp]
En esperant ne plus vous revoir :)
++


---------------
Do you serve a purpose,Or purposely serve?

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C++

  [C/C++] Problemme de remplissage de tableau....

 

Sujets relatifs
comment faire un tableau aux bords arrondis ??creation d'un tableau dynamique
Recopier un tableau d'entier?Declarer un tableau en CSS
[XHTML] tableau ou liste ?[ PHP ] comment enlever les doublons d'une var en tableau ( Array )
qd je met une "form" dans une ligne de tableau, IE 6 saute une ligneTableau : alterner remplissage colone gauche puis droite puis gauche ?
[HTML] Une hauteur minimal de tableau/cellule ?? 
Plus de sujets relatifs à : [C/C++] Problemme de remplissage de tableau....


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR