Vous êtes sur la page 1sur 2

Université A/Mira Béjaïa Faculté de Technologie- Département d’électronique.

Réseau et télécommunication, Electronique instrumentation, Système de télécommunication.

Examen Programmation Orientée Objets (En C++)

Exercice 1 : (6 pts)
Répondez brièvement aux questions suivantes, pour les questions type QCM plusieurs
choix peuvent être justes. Dans ce cas ils doivent tous être choisis :
1) Citez les quatre notions fondamentales de la programmation orientée objets.
2) Quel est le mot clé du langage C++ qui permet de définir l’interface d’une classe ?
3) Comment implémenter une relation de composition en C++.
4) Que signifie la multiplicité 1..* dans un diagramme de classe?
(a) Aucun ou plusieurs (b) Exactement un (c) Au plus un (d) Au moins un

5) Si A et B dérivent de X, C dérive de Y, et D dérive de X et Y, et E dérive de A. Si


une fonction attend en argument un objet de type X, on peut lui passer un objet de
type :
(a) A (b) B (c) C (d) D (e) E (f) X (g) Y

6) Dans une classe, les constructeurs de ses objets membres sont appelés _____ le code
de son constructeur
(a) Avant (b) Après (c) Ca dépend du compilateur

7) Si dans la déclaration d'une classe A on trouve la ligne friend class B; alors :


(a) Les méthodes de la classe B peuvent accéder aux membres privées de A
(b) Les méthodes de la classe A peuvent accéder aux membres privées de B

8) Les quelles des diagrammes UML suivants sont des diagrammes comportementaux:
(a) de collaboration (b) de classe (c) de séquence (d) d’objets

9) Détecter les erreurs dans les deux codes suivants :


Code 1 Code 2

Exercice 2 : (8 pts)
Les parallélogrammes sont caractérisés par une longueur horizontale 𝑙, une longueur
inclinée 𝐿 et l’angle inférieur gauche 𝑎 (voir figure ci-dessous –à gauche-).
Les rectangles et losanges sont des parallélogrammes.
 Construire la hiérarchie de classes représentant les parallélogrammes, les rectangles
et les losanges (diagramme UML de classes).
 Donner le code source des classes correspondantes en C++ (attributs, constructeurs
et éventuellement, accesseurs et manipulateurs).
 Déformations sur les différents parallélogrammes : Implémenter au niveau de la
superclasse (et redéfinir si besoin dans ses sous-classes) les méthodes
AllongerX(double coeff), AllongerY(double coeff) et ChangerAngle(double coeff)
qui modifient respectivement l, L, et a (exemple : l=l*coeff pour allongerX).
Mais sans changer la nature du parallélogramme sur laquelle elles sont appliquées.
Par exemple, un losange devra garder ses cotés égaux quel que soit la déformation,
un rectangle son angle droit.
 Implémenter la méthode Pivoter () (qui sera redéfinie si besoin dans les sous-classes)
qui effectue, la transformation représentée graphiquement ci-dessous:

 Les carrés : écrire la classe Carré (qui est un losange rectangle), et implémenter les
méthodes de déformation et de pivotement. Justifier les modifications que vous
pouvez être amené à faire dans les autres classes pour implémenter la classe Carré.

Exercice 3 : (5 pts)
1. Un serveur de messagerie sert d'intermédiaire entre l'émetteur et le récepteur d'un
email. Le serveur est toujours en fonction.
 Est-ce qu'on peut utiliser des messages synchrones pour l'envoi et la récupération
des emails ?
 Complétez le diagramme de séquence la figure ci-dessous.

2. Représenter en diagramme UML de classes (classes et associations) un réseau


simple d’un local en prenant en considération les trois caractéristiques suivantes :
 Un ordinateur est branché à un segment réseau.
 Un ordinateur est situé dans une salle.
 Seul un segment réseau passe dans une salle.
Bon courage.

Vous aimerez peut-être aussi