TP 6 : Sujet (finalisation du distributeur ==> projet) ============ 1) Stock - est_limite() doit e^tre virtuelle pure ==> la fonction actuelle passe dans Stock_produits - traite_vide() doit e^tre virtuelle - les tableaux sont du type ge'ne'rique Tableau_dyn (voir 5) 2) Stock_pieces - est_limite() se de'clenche a` partir d'un seuil inversement proportionnel a` la valeur de la pie`ce, c'est-a`-dire : 0 pour la plus grosse, puis 1 ... - traite_vide() doit essayer de rendre la monnaie quand-me^me. La situation est : rendre_monnaie() e'tait en train de faire son travail quand elle s'est aperc,u qu'une certaine pie`ce qui lui e'tait ne'cessaire n'e'tait plus disponible; traite_vide() peut peut-e^tre y arriver avec les pie`ces restantes. 3) Monnayeur - Cre'er une fonction Run() en re'cupe'rant le traitement qui e'tait auparavant dans le distributeur - cre'er une fonction de connexion a` l'objet distributeur 4) Distributeur - Run() ne doit plus faire le travail du monnayeur, mais simplement appeler monnayeur.Run() quand on tape 'M' - doit donc se connecter a` l'objet monnayeur 5) Tableau_dyn - classe ge'ne'rique imple'mentant un tableau alloue' dynamiquement - des contro^les sont faits sur l'indice par l'ope'rateur [] - une fonction agrandit() permet d'augmenter la taille du tableau (en pre'servant les informations existantes, e'videmment) 6) Interface Homme-Machine - il est possible de simuler une ve'ritable IHM textuelle a` l'aide des fichiers : MESLABEL.H, MESLABEL.CPP, MESBOUT.H, MESBOUT.CPP, MAJAUGE.H, et MAJAUGE.CPP. - imaginer que les indications entre [ ] sont des afficheurs lumineux qu'il faut mettre a` jour a` chaque e've`nement. - lorsque la pie`ce ou le produit est choisi (en tapant un caracte`re), appeler la fonction Clicke() du bouton correspondant. - Regarder les exemples dans E:\TS3\PROF\BUREAUD\CPP\PROJET : IHMdos pour l'interface textuelle pre'ce'demment de'crite ; IHMdsg pour une interface DOS semi-graphique. 7) Rede'finition de << pour les labels (optionnel) 8) - Tester extensivement en ve'rifiant la cohe'rence des affichages. - Traiter au moins les exceptions sugge're'es au pre'ce'dent TP. - Ve'rifier e'galement la cohe'rence du comportement lorsqu'il n'y a plus de produit ou de pie`ces; pre'voir les erreurs de l'utilisateur. - Parfaire l'e'criture du code dans chacun des fichiers. - Regrouper dans un seul re'pertoire tous les .H, les .CPP utiles, et le .EXE (supprimer les e'ventuels .BAK, .OBJ, DEBUG, etc... ), ainsi qu'un fichier RAPPORT.TXT de'crivant succintement le projet, les fichiers, les limitations et/ou extensions et/ou particularite's de votre imple'mentation, notamment le syste`me d'exceptions et son test. - Envoyer un mail a` bureaud pour indiquer le re'pertoire (chemin complet sur E:) au plus tard le MARDI 05 DE'CEMBRE 2000 a` 17h pour la version "textuelle". (retard ==> points de pe'nalite's; projet non rendu ==> unite' non valide'e). ---> Ne plus rien modifier sur ce re'pertoire avant d'avoir rec,u un mail de confirmation. ---> La coope'ration entre projets est possible a` condition de ne pas s'inspirer inte'gralement des morceaux de code des autres. ---> Le programme doit compiler et tourner sur les PC de l'e'cole; une 2e`me version, graphique, peut e^tre de'veloppe'e dans un autre environnement (ce travail est optionnel, mais pour e^tre pris en compte, il doit e^tre rendu avant le 7/1/2001).
Dernière mise à jour :