Examen de passage tsge 1ère année: examen de passage tsge 2011 corrigé Examen de passage POO C# OFPPT pour l'année 2013/2014 Soit une caisse de supermarché, on souhaite développer une application informatique permettant la gestion automatique de ce système. Chaque produit commandé est caractérisé par son identificateur (ou la référence), une description, le prix et la catégorie. Il existe deux types de catégories: soit Software ou Hardware. a. Donnez le code source de la classe Produit ? b. Spécifier les accesseurs pour le champ Attribut ? c. Ajouter le constructeur par défaut et d’initialisation ? d. Ajouter une fonction nommée GetTarif() qui permet d’afficher le prix du produit ? e. Ajouter la fonction SetTarif() permettant de modifier le prix du produit ? f. Ajouter la fonction Tostring() qui permet d’afficher toutes les propriétés ? g. On souhaite comparer deux produits, deux produits sont égaux s’ils ont les mêmes propriété. Donc ajouter la fonction Equals() permettant de faire cette comparaison ? h. Prévoir une exception CatégorieInvalideException() qui s’exécute si la catégorie est invalide ? Un Produit en solde est caractérisé aussi par l’attribut « Remise » qui est le pourcentage de réduction sur le prix d'origine 2. Développez la classe ArticleEnSolde(1pt) a. Ajouter les Attributs(1pt) b. Ajouter les Constructeurs par défaut et d’initialisation (3pts) c. Redéfinir la fonction getPrix(), permettant de tenir en compte le solde. (3pts) Ce supermarché réalise des factures datées et numérotées automatiquement (en partant de 1). Chaque facture est caractérisée par : · Id de la facture (automatiquement incrémenté) · Date de la facture (prend par défaut la date du système) · Collection d’achats Soit la classe nommée Achat caractérisée par l’article acheté et la quantité demandée (les attributs) (Ce n’est pas obligatoire d’écrire la classe Achat) CODE:HIDE public class Achat { privateintnuméro_achat; private Article article_acheté; privateint quantité; } 3. Donnez le code source de la classe Facture (0,5 pt) a. Ajouter les attributs (3pts) b. Ajouter les Constructeurs par défaut et d’initialisation (3pts) c. Développez la fonction void Ajouter (Achat a): permettant d’ajouter un achat à la collectionachats, la méthode doit afficher un message d’erreur si un achat existe déjà dans la collection.(3pts) d. Développez la fonction Double Montant_facture(): pour afficher le montant total de la facture(3pts) e. Développez la fonction Enregistrer_Achats(string nom_fichier): permettant la liste des achats triée par désignation dans un fichier binaire(3pts) f. Développez la fonction Tostring() qui affiche le numéro et la date de facture avec la liste des articles achetées de la façon suivante :(4pts) Exercice intéressant en POO: