Page 263 - IT2
P. 263
N.B. chaque ligne est affichée par une même et seule instruction de sortie.
Exercice 2 : (6 pts)
Ecrire une fonction qui calcule le factoriel d’un entier n donné (le factoriel d’un entier n s’écrit n!
et n! = 1 x 2 x 3 x…n. Exemple : 3! = 1 x 2 x 3 = 6).
n
Ecrire une fonction qui permet de calculer le nombre de combinaisons de p parmi n éléments, ,
C p
n ! n
Rappel : =
C p
p !.(n - p )!
Ecrire un programme utilisant ces fonctions, pour les tester.
Exercice 3 : (5 pts)
Ecrire un programme qui permet d’entrer un tableau de n valeurs numériques ; puis de chercher et
afficher toutes ses valeurs, distinctes, avec pour chacune les positions où elle apparaît.
Exemple :
Soit le tableau : 1 - 2 - 3 - 1 - 2 - 10 - 1
Le résultat :
les positions de 1 sont : 1, 4, 7
les positions de 2 sont : 2, 5
les positions de 3 sont : 3
les positions de 10 sont : 6
Partie 2 : Programmation orientée objet (25 points)
L’objectif de cet exercice est de développer une application de gestion des demandes de congé
d’une entreprise.
1. Classe Salarie (3,5pts)
a. Créer une classe Salarie qui se caractérise par : Numéro de matricule, nom, prénom, date
d’embauche et solde des jours de congés d’un salarié. (0,5 pt)
b. Créer un constructeur à 2 paramètres : nom et prénom, ce constructeur initialise le n° de
matricule (affecté de façon incrémentale par rapport au nombre des salariés), et la date
d’embauche par la date système. (1 pt)
c. Ajouter des accesseurs pour tous les champs. (1 pt)
d. Ajouter une méthode afficher () qui affiche les informations d’un salarié. (1 pt)
2. Classe Directeur (8pts)
a. Créer une classe Directeur sous-classe de la classe Salarie, elle comporte une liste des
salariés. Ecrire le constructeur correspondant ainsi que sa méthode afficher qui affiche
les informations d’un Directeur. (2 pts)
b. Ajouter une méthode ajouterSalarie qui permet d’ajouter un salarié à la liste des salariés.
(2 pts)
c. Ajouter une méthode getSalarieByNom qui recherche et renvoie le Numéro de matricule
d’un salarié par nom et prénom. (2 pts)
www.itlearning-settat.com
2 / 6
Email: admission@itlearning-settat.com
Tél.:0661077812

