classement --> comment faire - C++ - Programmation
Marsh Posté le 27-04-2004 à 18:07:43
je crois qu'il faut que tu definisse une operateur de tri pour ta classe Equipe qui gere ce cas, et insatncier ta multimap en utilisant cette operateur.
Marsh Posté le 27-04-2004 à 18:13:16
joel f a écrit : je crois qu'il faut que tu definisse une operateur de tri pour ta classe Equipe qui gere ce cas, et insatncier ta multimap en utilisant cette operateur. |
Comme je l'ai dit je débute, premiere année de DUT donc si tu pouvais m'expliquer ce qu'est un opérateur de tri et comment ca marche ca serait cool.
Merci
Marsh Posté le 27-04-2004 à 18:55:24
personnellement, je mettres les points et le nom en tant que membres de la classe Equipe.
le tout maintenu dans un vector<Equipe>, et ton operator < qui prends en compte les points, et les autres attributs...
Marsh Posté le 27-04-2004 à 19:45:28
les containers de la STL fournissent un argument template qui est l'operateur de comparaison sur les éléements ou dans ton cas sur les clés du container.
On peut définir un FONCTEUR, à savoir une classe fournissant une surcharge de l'opérateur() pour redefinir l'ordre sur différents éléments.
Le plus simple pour toi serait de stocket tout dans un vector<> et d'utiliser un foncteur qui tri tout selon l'ensemble de tes critéres.
Quelques Liens en vrac :
http://casteyde.christian.free.fr/ [...] x5263.html
http://casteyde.christian.free.fr/ [...] x8791.html
http://forum.hardware.fr/hardwaref [...] 5677-1.htm
http://docs.mandragor.org/files/Pr [...] c8899.html
Marsh Posté le 27-04-2004 à 17:14:14
Bonjour,
je suis étudiant à la rochelle en DUT info et j'avais a presenter pour avant les vacances un programme qui en fonction des resultats de matchs de football que l'on rentrait, pouvait nous donner le classement des buteuses et le classement general.
Seulement pour le classement general, la methode est la suivante j'ai une multimpap de la forme multimap<int, pair<string,Equipe> > ou l'entier est le nombre de points de l'equipe, le string le nom de l'equipe et Equipe une instance d'equipe.
Actuellement le programme fait une itération sur la map et affiche une equipe dans le classement lorsque le nombre de points de celle ci(l'entier) est égal a un nombre que je décremente au fur et a mesure.
Seulement avec cette méthode si 2 équipe ont le meme nombre de points, aucune distinction n'est faite hors dans la réalité le classement regarde des attributs des equipes (la difference de but des equipes) et les classes en fonction de cela , je cheche donc comment pourrais je introduire cette verification dans mon iteration Merci.
PS : je ne sais pas si c'est tres clair j'ai encore du mal a expliquer aux autres ce que je programme donc si vous avez des questions n'hésitez pas.
voila ce qui se passe actuellement :
je orecise que terminal est une classe qui nous a ete fourni par les profs de l'IUT, en gros elle remplace cout et cin
voila ce que je voudrais mais a mon avis ce que je suis en trainde faire est pas la bonne methode
Message édité par john8585 le 27-04-2004 à 17:40:11