Exercice 1
Créer une classe “Etudiant”. Cette dernière possède les attributs privés suivants:
- Nom
- Prénom
- Code permanent
- Credits Complétés
Créer les fonctions suivantes:
- Constructeur (Prend prénom et nom en paramètre. Le code permanent est vide initialement et le nombre de crédit complété est toujours de 0 initialement)
- CreerCodePermanent: (initialise la valeur de l’attribut “Code permanent”. Le code permanent est composé des 3 premières lettres du nom suivi des 3 premières lettres du prénom, tout en majuscule)
- AjouterCoursComplete (ajoute 3 crédits complétés)
- ChangerNom (permet de changer le nom avec un nouveau nom passé en paramètre)
- ChangerPrenom (permet de changer le prénom avec un nouveau prénom passé en paramètre)
- AfficherProfile (affiche le nom suivi du prénom, séparé par une virgule ainsi que le nombres de crédits et le code permanent de l’étudiant)
Exercice 2
En utilisant les concepts appropriés, représentez la situation suivante:
- Un répertoire possède un nom
- Un fichier possède un nom et une taille (valeur numérique qui représente le nombre d’octets).
- Un répertoire possède une liste de fichier et une liste de répertoire.
- Chaque répertoire et chaque fichier doit connaitre son répertoire parent (S’il en a un) ainsi que ses répertoires et fichiers enfants.
- Un fichier doit offrir une méthode “obtenirCheminAcces” qui retournera la séquence des répertoires parents séparées par des barres obliques et qui termine par le nom fichier (Ex. Document/Devoir/ProjetDeSession.zip)
Représentez l’arborescence suivante:
- Document
- Devoir
- ProjetDeSession.zip
- Voyage
- Caraibe
- Itinéraire.pdf
- BilletAvion.png
- Caraibe
- Maison
- CertificatDeLocalisation.pdf
- Devoir
Exemple

Résultat:

Exercice 3
Créez une classe “Mathematiques” qui offre les fonctions suivantes:
- ValeurAbsolue: Retourne la valeur positive d’un nombre passé en paramètre
- Factoriel : Retourne le produit de tous les nombres de 1 jusqu’à un nombre passé en paramètre (Ex. Factoriel(5) = 5 * 4 * 3 * 2 * 1)
- RacineCarre: Retourne la racine carrée d’un nombre passé en paramètre
- MaxTableau: Retourne le plus grand nombre se trouvant dans un tableau passé en paramètre
- Division: Retourne la division de A par B qui sont passés en paramètre
- Facteur: Affiche tous les facteurs entiers d’un nombre passé en paramètre (Ex. 20 = 1, 2, 4, 5, 10, 20)
Créer les exceptions suivantes:
- Factoriel: Lance une exception de type “ValeurNegativeException” si on lui fournit une valeur inférieure à 0
- RacineCarre: Retourne une exception de type “ValeurNegativeException” si on lui fournit une valeur inférieure à 0
- Division: Lance une exception de type “ValeurNegativeException” si on lui fournit un diviseur inférieure à 0
- Facteur: Lance une exception de type “ValeurIncorrecteException” si on lui fournit une valeur inférieure à 2
Exercice 4
Représentez la situation suivante en créant des objets différents pour tous les concepts soulignés:
- Un robot à 2 bras, 2 jambes, 1 tete
- Un bras a un certain nombre de doigts, et une tete peut avoir une expression parmi la liste suivante: sourire, neutre, rire (Si on donne autre chose, lancer une exception)
Le robot offre une fonction “meDecrire()” qui affiche le message suivant en insérant les valeurs appropriées:
- Je suis un robot et j’ai __ doigts sur ma main droite et __ doigts sur ma main gauche. Mon expression faciale est _______.
L’utilisation des classes peut ressembler à ceci:
