- Définir une classe
Notecaractérisée par une note entière, sa pondération (entière), et le type de note (TP ou CM). - Définir le constructeur par défaut, et un constructeur à paramètres.
- Écrire une procédure
Affichequi affiche la note et sa pondération entre parenthèses (pas son type). - Écrire une procédure
Changequi change la valeur de la note mais pas la pondération, ni son type. - Définir une classe
UEreprésentant un tableau (de taille variable) de notes. - Écrire le constructeur vide.
- Écrire une procédure
Ajouteajoutant uneNoteà la liste des notes de l'UE. - Écrire une procédure
Affichequi affiche l'ensemble des notes de l'UE (avec leur pondération) sous la forme :
- Écrire une fonction membre
Moyennecalculant la moyenne de l'UE, comme la moyenne de toutes les notes de TP et CM. - Écrire une fonction membre
Validequi retourne un booléen selon que l'UE soit validée (moyenne supérieure à 10) ou non. - Écrire une fonction membre
Change(int i, int n)qui change la i-ème note par une nouvelle note, sans changer la pondération ni le type de note. - Écrire une fonction amie
Fusionqui retourne une UE avec la fusion des notes de deux UE. - Écrire une fonction
Bilanaffichant les notes, et le message ou selon la moyenne. - Écrire un programme principal qui crée une UE, et l'affiche (elle devrait être vide).
- Ajouter les notes de TP , et les notes de .
- Afficher le bilan de l'UE.
- Corriger la troisième note, normalement le , de l'UE en un , et afficher le nouveau bilan.
Créez un fichier avec votre nom de type nom-prenom.cpp qui contiendra l'intégralité
du code demandé. Le fichier devra contenir les déclarations des structures et des fonctions
en début de fichier (ce qui aurait été placé dans un fichier .h), puis
le code des fonctions, et enfin le main() avec les appels validant
les fonctions.
Aucune lecture de la part de l'utilisateur (std::cin>>) n'est attendu.
Classe Note
Classe UE
Programme
On pourra remplacer les fonctions membres Affiche par la surcharge de l'opérateur de
flot operator<< .