20 juil. 2011

Examens de Passage Pratique 2011 - TDI - Variante 3

Examens de Passage Pratique 2011 - TDI - Variante 3


Partie 1 : Programmation structurée

Exercice 1 : (4 pts)
Ecrire un programme qui permet d’entrer un tableau de n valeurs numériques ; puis d’inter changer ses éléments de manière que la 1ère valeur devienne la dernière, la deuxième devienne l’avant dernière, … ; et l’afficher, dans ce nouvel ordre.
Exemples d’exécution :


EP - Examens de Passage Pratique 2011 V4-V5-V6 - TDI
EP - Examens de Passage Pratique 2011 V3- TDI


N.B. Les éléments doivent être inter changés, et non simplement affichés, dans cet ordre.

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).
Ecrire une fonction qui permet de calculer le nombre d’arrangements de p parmi n éléments,  .
Rappel : 


EP - Examens de Passage Pratique 2011 V4-V5-V6 - TDI
EP - Examens de Passage Pratique 2011 V3- TDI



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 compter et afficher le nombre de ses valeurs distinctes.

Partie 2 : Programmation orientée objet

L’objectif de cet exercice est de développer une application de gestion des demandes de congé d’une entreprise.
1. Classe Fonctionnaire (3,5pts)
     a. Créer une classe Fonctionnaire qui se caractérise par : Numéro de  matricule, nom, prénom, date de naissance et solde des jours de congés du fonctionnaire. (0,5 pt)
     b. Créer un constructeur à 2 paramètres : nom et prénom, ce constructeur initialise le numéro de matricule (affecté de façon incrémentale par rapport au nombre des fonctionnaires), 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 toString () qui renvoie les informations d’un fonctionnaire. (1 pt)
2. Classe Directeur (8pts)
     a. Créer une classe Directeur sous-classe de la classe Fonctionnaire, elle  comporte  une liste des fonctionnaires.  Ecrire  le  constructeur  correspondant  ainsi  que  sa méthode toString qui renvoie  les informations  d’un Directeur ainsi que les noms des fonctionnaires. (2 pts)
     b. Ajouter une méthode ajouterFonctionnaire  qui permet d’ajouter un Fonctionnaire à la liste des Fonctionnaires. (2 pts)
     c. Ajouter une méthode getFonctionnaireParNom qui recherche et renvoie le Numéro de matricule d’un Fonctionnaire par nom et prénom. (2 pts)
     d. Ajouter une méthode getFonctionnairesParAge qui renvoie la liste des fonctionnaires qui atteignent l’âge de 60 ans cette année. (2 pts)
3. Classe DemandeConge (2,5pts)
     a. Créer une classe DemandeConge caractérisé par : code fonctionnaire, date début, durée, motif, Etat (En cours, Validé, Refusé). (0,5 pt)
     b. Ajouter un constructeur à 4 paramètres : code fonctionnaire, date début, durée et motif, et initialise l’état par la valeur « En cours ». (0,5 pt)
     c. Ajouter une méthode CalcDateFin qui calcule la date de fin à partir de la date début et durée. (0,5 pt)
     d. Ajouter des accesseurs pour tous les champs. (1 pt)
4. Classe GestionCongé (11pts)
     a. Créer une classe GestionConge qui se caractérise par une liste des Directeur et une liste des DemandeConge  et ajouter un constructeur sans paramètre. (1 pt)
     b.  Ajouter une méthode listeFonctionnaires qui affiche la liste des noms des Fonctionnaires qui ont demandé des congés cette année. (2 pts)
     c. Ajouter une méthode ajouterDemandeConge qui permet d’ajouter un objet DemandeConge à la liste des demandes. (2 pts)
     d. Ajouter une méthode listeFoncEnConge qui retourne les noms des fonctionnaires qui sont en congé. (3 pts)
     e. Ajouter une méthode listeDemandeCongeParFonctionnaire  qui retourne une liste des demandes de congé d’un fonctionnaire, cette méthode a comme paramètre le code d’un Fonctionnaire. (3 pts)

Partie 3 : Programmation événementielle

On souhaite développer une application pour la gestion des Notes de l’examen de passage. 
Chaque stagiaire est identifié par :
     - Nom et prénom
     - Groupe
     - Niveau
     - Moyenne EFM
     - Note arabe
     - Note français 
     - Note anglais
     - Note Théorie 
     - Note pratique
1. Créer la classe Stagiaire. (2 pts)
2. Créer une classe Liste Stagiaire qui contient une Collection d’objets Stagiaire. (2 pts) 
3. Créer l’interface ci-dessous :  (4 pts)


EP - Examens de Passage Pratique 2011 V4-V5-V6 - TDI
EP - Examens de Passage Pratique 2011 V3- TDI



4. Ecrire le code correspondant au bouton Valider permettant de valider les données saisies par l’utilisateur et de les stocker dans une collection d’objets Liste Stagiaire : les valeurs doivent être valides c'est-à-dire comprises dans les bons intervalles. exemple : la note Théorie doit être comprise entre 0 et 40. Si une erreur est détectée, un message d’erreur doit être affiché.  (4 pts)
5. Ecrire le code correspondant au bouton Calculer permettant de calculer : (2 pts)
     • La moyenne de l’examen de communication qui vaut (Note Arabe + Note Français + Note Anglais)/4) .
     • La moyenne générale qui vaut (Moyenne de l’examen de communication + Moyenne EFM + Pratique + Théorie)/180). 
6. Ajouter une interface qui permet de lister dans une grille tous les stagiaires avec leurs notes et décision (ADMIS si Moyenne générale >=10 ou REDOUBLE dans le cas contraire). (3 pts)
7. Ajouter dans cette interface un bouton Export qui permet d’enregistrer ces données dans un fichier. (3 pts)

Aucun commentaire:

Enregistrer un commentaire