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

  FORUM HardWare.fr
  Programmation
  C++

  help classe auto référentielle ( chainage d'objets )

 


 Mot :   Pseudo :  
 
 Page :   1  2  3
Page Précédente
Auteur Sujet :

help classe auto référentielle ( chainage d'objets )

n°884893
fullnight
Posté le 28-10-2004 à 14:54:50  profilanswer
 

bonjour a tous
alors voila je débute en c++
et voila que mon prof nous donne seulement 2 jours pour faire cet exercice....côté.
 
nous avons réalisés l'uml et en fait ce que je ne sais pas faire
c'est enchainer 100 objets chacun contenant un *ptrSuivant      qui pointe vers l'objet suivant.
 
voila j'aimerais une aide détaillée(voire le code) si possible merci à tous


Message édité par fullnight le 16-12-2004 à 15:41:45
mood
Publicité
Posté le 28-10-2004 à 14:54:50  profilanswer
 

n°884903
smaragdus
whores, drugs & J.S. Bach
Posté le 28-10-2004 à 14:59:28  profilanswer
 

Tu rémunères combien pour qu'on fasse ton boulot à ta place ?

n°884908
fullnight
Posté le 28-10-2004 à 15:01:59  profilanswer
 

je demande pas de faire le boulot à ma place !
 
j'ai déja tout préparé dans mon code  
il me manque seulement une aide car je ne sais pas comment représenter une liste chainée en c++.
 
ca demande pas bcp je pense que c'est juste un petit service ca se paye ca?

n°884918
smaragdus
whores, drugs & J.S. Bach
Posté le 28-10-2004 à 15:05:47  profilanswer
 

Comment représenter une liste chaînée ?
Ca dépend, il y a plusieurs méthodes.  
Si on pouvait jeter un oeil sur ton modèle UML, ça aiderait.
Et puis tu devrais poster ton code pour voir à quel niveau tu bloques.

n°884919
Taz
bisounours-codeur
Posté le 28-10-2004 à 15:06:32  profilanswer
 

TA GUEULE :o

n°884924
smaragdus
whores, drugs & J.S. Bach
Posté le 28-10-2004 à 15:08:34  profilanswer
 

Taz a écrit :

TA GUEULE :o


 
 :pt1cable:

n°884926
cris56
Posté le 28-10-2004 à 15:09:51  profilanswer
 
n°884927
fullnight
Posté le 28-10-2004 à 15:11:18  profilanswer
 

moi je veux bien mais mon code est composé de 2 fichiers .h et de 3 .cpp
 
et puis le modele uml je fais cmt pour le poster? je le essine dans paint  et je le poste?

n°884928
Taz
bisounours-codeur
Posté le 28-10-2004 à 15:12:28  profilanswer
 

tu postes rien. tu te mets au taf :o

n°884930
fullnight
Posté le 28-10-2004 à 15:13:42  profilanswer
 

on m'a parlé de classes auto référentielles.
 
j'ai une classe facture qui instancie un objet UneFacture qui possède un *ptrSuivant     qui pointe vers une autre facture du meme type.
 
je ne sais pas trop cmt créer 100 factures sans saturer la mémory.

mood
Publicité
Posté le 28-10-2004 à 15:13:42  profilanswer
 

n°884931
Taz
bisounours-codeur
Posté le 28-10-2004 à 15:14:22  profilanswer
 

il est où le topic des bestof parce que là on en tient un bon

n°884932
fullnight
Posté le 28-10-2004 à 15:14:29  profilanswer
 

et surtout les relier

n°884933
Taz
bisounours-codeur
Posté le 28-10-2004 à 15:14:56  profilanswer
 

fullnight a écrit :

et surtout les relier

operateur =

n°884936
smaragdus
whores, drugs & J.S. Bach
Posté le 28-10-2004 à 15:17:20  profilanswer
 

Poste seulement la déclaration de la classe collection, ça permettra d'avoir une idée sur la méthode mise en oeuvre.

n°884938
smaragdus
whores, drugs & J.S. Bach
Posté le 28-10-2004 à 15:18:06  profilanswer
 

Au fait : ignore la pollution de Taz, il ne sait faire que ça.

n°884946
Taz
bisounours-codeur
Posté le 28-10-2004 à 15:20:31  profilanswer
 

non, je vois juste un topic hors charte, avec un titre irritant et un gus parano qui a pas envie d'en foutre une ramée.

n°884951
fullnight
Posté le 28-10-2004 à 15:23:26  profilanswer
 

j'ai fait une classe Facture
 
ma classe Collection est vide
 
class Facture  
{
 
private:
         int id; //  numero d'identification de la facture.
   Date Datef; // objet de type Date crée.
   float  MontantHTVA; // le montant hors tva.
   Facture *pFactureSuivante; // pointeur du type de la classe elle-même.
public:
 
 Facture();
 virtual ~Facture();
 int getid();  
    Date getDate() ;
    double getMontantHTVA();
 void setid();
 void setDate();
 void setMontantHTVA();
      AjoutFacture();
 
inline friend ostream &operator<< ( ostream &sortie, Facture &UneFacture )
{
   sortie << "\n\n--- Votre facture est ---\n\n"  
       <<"\nreference facture: "<<UneFacture.id  
    <<"\ndate facture: "
          << UneFacture.Datef.jour<<"/"<<UneFacture.Datef.mois<<"/"<<UneFacture.Datef.annee
    <<"\nmontant htva: "
       << UneFacture.MontantHTVA << endl ;
   
 
return sortie;
}
 
inline friend istream &operator>> ( istream &entree, Facture &UneFacture )
{
    cout <<"\nreference facture: ";
    entree >> setw(4) >> UneFacture.id; // entre le numero de la facture.
 cout <<"\ndate facture (JJMMAAAA) : ";
 entree >> UneFacture.Datef.jour >> UneFacture.Datef.mois >> UneFacture.Datef.annee;  
 cout <<"\nmontant HTVA facture: ";
 entree >> setw(5) >> UneFacture.MontantHTVA;   //entre le montant HTVA.
 
 return entree; // permet cin >> a > etc
}
 
};


Message édité par fullnight le 16-12-2004 à 15:42:00
n°884955
cris56
Posté le 28-10-2004 à 15:26:44  profilanswer
 

c'est ... flou comme model
 
tu voudrais pas séparer l'implementation de la liste de la facture ?

n°884959
Taz
bisounours-codeur
Posté le 28-10-2004 à 15:28:11  profilanswer
 

ouais, parce que sur ton schéma UML, ça doit apparaître clairement qu'une Collection est associé à * Facture ...

n°884960
Lam's
Profil: bas.
Posté le 28-10-2004 à 15:29:57  profilanswer
 

Ouip, même si en algo, on le fait souvent (de relier les noeuds entre eux), en C++, on évite :  
 - chaque facture est indépendante, et n'a pas conscience de l'existence des autres factures
 - ta classe Collection gère la liste chaînée de facture.
 
Collection devient alors une simple instanciation de la clase list de la STL avec des pointeurs sur Facture. Et ta classe Facture n'a plus le pointeur vers la Facture suivante.
 
Le lien vers la classe list a déjà été donné par cris56
 
edit: le lien était de cris56, pas de Taz. A mon avis, Taz n'a jamais entendu parler de la STL... :o


Message édité par Lam's le 28-10-2004 à 15:31:06
n°884961
cris56
Posté le 28-10-2004 à 15:31:36  profilanswer
 

edit : rien  :D


Message édité par cris56 le 28-10-2004 à 15:32:36
n°884962
fullnight
Posté le 28-10-2004 à 15:32:00  profilanswer
 

séparer l'implementation de la liste de la facture ?
bon j'ai mis en rouge ce qui peut permettre un chainage... mais c flou effectivement
 
 
class Facture  
{
 
private:
         int id; //  numero d'identification de la facture.
    Date Datef; // objet de type Date crée.
   float  MontantHTVA; // le montant hors tva.
 Facture *pFactureSuivante; // pointeur du type de la classe elle-même.  
 
public:
  Facture();
 virtual ~Facture();
 int getid();  
    Date getDate() ;
    double getMontantHTVA();
 void setid();
 void setDate();
 void setMontantHTVA();
      AjoutFacture();
};

n°884964
masklinn
í dag viðrar vel til loftárása
Posté le 28-10-2004 à 15:35:00  profilanswer
 

Lam's a écrit :

A mon avis, Taz n'a jamais entendu parler de la STL... :o


 [:ddr555] [:rofl] [:ddr555]  


---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
n°884968
cris56
Posté le 28-10-2004 à 15:36:07  profilanswer
 

il est ou le post de Smaragdus ?

n°884969
smaragdus
whores, drugs & J.S. Bach
Posté le 28-10-2004 à 15:36:12  profilanswer
 

Sais-tu quel est le rôle de AjoutFacture() ?
Elle n'a aucun param d'entrée donc comment peut elle faire un lien ?

n°884976
fullnight
Posté le 28-10-2004 à 15:42:13  profilanswer
 

ajoutFacture()
n'a aucun param  
je sais bien car je ne sais pas bien ce qu'elle doit faire.
 
en tout cas il faut qu'elle ajoute la facture a la collection.
 
mais il faut un début.... et puis un chainage jusqu'a la 100èmè et derniere facture qui elle pointe vers NULL.
 
mais bon c trop dur


Message édité par fullnight le 16-12-2004 à 15:43:58
n°884978
antp
Super Administrateur
Champion des excuses bidons
Posté le 28-10-2004 à 15:43:36  profilanswer
 

Les forumeurs sont priés de ne pas mettre leurs titres en lettres capitales, conformément aux règles en vigueur sur cette section :o


---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
n°884980
Lam's
Profil: bas.
Posté le 28-10-2004 à 15:44:08  profilanswer
 

fullnight a écrit :

ajoutFacture()
n'a aucun param  
je sais bien car je ne sais pas bien ce qu'elle doit faire.


 
Oui mais non, on t'a dit de ne pas faire comme ça.  
 
Relis mon message, et pose des questions si tu comprends pas, au lieu de t'entêter dans ton système de liste chaînée préhistorique.

n°884986
fullnight
Posté le 28-10-2004 à 15:50:32  profilanswer
 

c'est pas que je m'entete
c'est le prof qui veut que ce soit une classe autoréférentielle donc je suis obligé de passer par la

n°884990
cris56
Posté le 28-10-2004 à 15:52:15  profilanswer
 

fullnight a écrit :

c'est pas que je m'entete
c'est le prof qui veut que ce soit une classe autoréférentielle donc je suis obligé de passer par la


 
 
ta pas de chance d'avoir un prof normal

n°884992
fullnight
Posté le 28-10-2004 à 15:52:51  profilanswer
 

ok si je relis
je comprend que je dois créer une classe liste qui pointera vers 100 objets factures

n°884994
fullnight
Posté le 28-10-2004 à 15:53:32  profilanswer
 

mais on n'a pas encore vu la STL !!
argh !!
c le dernier  chapitre du cours

n°884995
smaragdus
whores, drugs & J.S. Bach
Posté le 28-10-2004 à 15:53:58  profilanswer
 

fullnight a écrit :

c'est pas que je m'entete
c'est le prof qui veut que ce soit une classe autoréférentielle donc je suis obligé de passer par la


 
ok, c'est bien ce qu'il me semblait. Donc tu pas besoin de classe Collection.
Sinon il te faut plusieurs méthodes pour te balader dans la liste chaînée, effacer un item, ajouter un item etc...

n°884996
fullnight
Posté le 28-10-2004 à 15:53:58  profilanswer
 

le lien proposé est bien gentil mais en anglais et je n'ai plus qu'une heure pr terminer

n°884997
cris56
Posté le 28-10-2004 à 15:54:25  profilanswer
 

fullnight a écrit :

mais on n'a pas encore vu la STL !!
argh !!
c le dernier  chapitre du cours


 
ben prend un peu d'avance


Message édité par cris56 le 28-10-2004 à 15:55:08
n°884998
fullnight
Posté le 28-10-2004 à 15:55:03  profilanswer
 

il a demandé aux plus forts d'effacer une facture bref de faire un menu .....
 
mais il veut simplement 100 factures par classe auto référencée

n°885001
smaragdus
whores, drugs & J.S. Bach
Posté le 28-10-2004 à 15:55:40  profilanswer
 

fullnight a écrit :

le lien proposé est bien gentil mais en anglais et je n'ai plus qu'une heure pr terminer


 

Citation :

et voila que mon prof nous donne seulement 2 jours


 
Mouais :heink:  

n°885003
Taz
bisounours-codeur
Posté le 28-10-2004 à 15:56:45  profilanswer
 

mince alors, on a une solution, mais ça gère que 99 factures ... pas de chance

n°885005
fullnight
Posté le 28-10-2004 à 15:59:09  profilanswer
 

mardi il nous a demandé ca pour jeudi
donc ca fait 2 jours !
et sur la vie de ma mère que j'ai pas arreté de me questionner, d'implémenter et de pas trouver
hier jusqu'a 5 h du mat !
 
enfin on est jeudi et c chaud..... il me reste 1h

n°885007
Taz
bisounours-codeur
Posté le 28-10-2004 à 16:01:37  profilanswer
 

et si tu réfléchissais un peu avant ? si on te dis de séparer liste et facture, c'est parce que ça n'a rien à voir et que ça t'aide à appréhender le problème de collection de manière plus simple.
 
fait ton UML/ADT de Liste, code là, après tu bourre tes factures dedans et ça marche

mood
Publicité
Posté le   profilanswer
 

 Page :   1  2  3
Page Précédente

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

  help classe auto référentielle ( chainage d'objets )

 

Sujets relatifs
[C++] conteneur stl & éléments-objets "thread-safe"Float, Int ---> help !
intégrité référentielle (trigger) qui marche pas[prog simple] Petit prog pour changer auto la taille d'une image
Help : Mise En Page[SQL Server 2000] Questions élémentaires - Help !
Help pour un PaintPicture !!![script IRC] recherche script de reponse auto sur mot clef
classe HashMap avec jspnoms d'objets réutilisables ? et affichage grid
Plus de sujets relatifs à : help classe auto référentielle ( chainage d'objets )


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