TP Test 2014


Énoncé
Dans une classe de CM2, un professeur ressent le besoin d’avoir un outil qui permet d’aider ses élèves à comparer différentes figures géométriques.
Remarques :
Il est important de suivre le déroulement du TP. Par contre, toutes les questions ne sont pas dépendantes, ne restez pas bloqué sur l’une d’entre elles.
Déroulement du TP :
En vous aidant du diagramme de classes suivant :
1er étape : (5 Points)
- Créer un nouveau projet C# sur Visual 2010
- Créer la classe Rectangle
- Ajouter les attributs à la classe Rectangle
- Ajouter les trois constructeurs à la classe Rectangle. Pour le constructeur par défaut, l’origine sera à (0,0), la largeur égale à 10 et la longueur égale à 20.
- Créer la méthode getSurface qui retourne la surface du rectangle.
- Créer la méthode ToString qui retourne les informations du rectangle dans une string sous la forme (ex : origine (10,20), largeur 50, longueur 80)
Figure : Rectangle
Origine : x=10, y=20
Largeur : 50
Longueur : 80
Surface : 4000
2em étape : (7 Points)
On veut tester la classe Rectangle et l’utiliser. On ne gèrera aucune erreur.
- Créer l’IHM suivant :
- Tester le constructeur par défaut : sans saisir de données (x, y, largeur, longueur), quand on clique sur le bouton Nouveau, crée un nouveau Rectangle. Quand on clique sur Afficher, affiche les informations du rectangle précédemment créé.
- Tester les deux autres constructeurs : saisir les données (x, y, largeur, longueur). Quand on clique une première fois sur le bouton Nouveau, crée un nouveau Rectangle dans un attribut de Form1 avec le 1er constructeur. Quand on clique une deuxième fois sur le bouton nouveau, crée un Rectangle dans un deuxième attribut de Form1 avec le 2em constructeur. Quand on clique sur Afficher, affiche les informations des deux rectangles précédemment créés.
- Il est plus judicieux d’utiliser une ArrayList pour stocker les nouveaux rectangles. Changer votre programme pour pouvoir créer un nombre quelconque de rectangle. Afficher tout les rectangles saisis quelque soit leur nombre. Mettre en commentaires les lignes de code changées.
- Quand on clique sur le bouton SurfaceMax, on affiche les caractéristiques du rectangle qui a la plus grande surface dans tous les rectangles saisis. Créer le programme qui réalise cette fonction.
- Quand on clique sur le bouton Lister, on affiche les caractéristiques du plus petit rectangle au plus grand rectangle en fonction de sa surface. Créer le programme qui réalise cette fonction.
3em Etape : (3 Points)
Pour améliorer notre analyse, nous constatons que l’on peut généraliser certaines propriétés. Le diag. de classes suivant représente cette généralisation. Nous allons nous intéresser aux classes Figure et Rectangle. Mettre en commentaire le code modifié.
- Créer la classe Figure avec ses attributs et méthodes
- Modifier Rectangle, faire dériver de Figure et modifier ses trois constructeurs ainsi que la méthode ToString
- Tester cette nouvelle configuration avec la même IHM
4em étape : (5 Points)
- Créer la classe Cercle. L’origine de Figure sera son centre et un attribut int rayon sera son rayon
- Rajouter les mêmes méthodes que Rectangle (3 constructeurs, ToString et getSurface)
- Rajouter une possibilité de choix sur l’IHM entre la saisie d’un rectangle ou un cercle. Changer l’IHM suivant le choix
- Tester en faisant plusieurs saisies de rectangle et de cercle. Tester tous les boutons. Attention, nouveau doit créer soit un Rectangle, soit un Cercle

