20 juil. 2011

Examens de Passage Pratique 2011 - TDI - Variante 1


Examens de Passage Pratique 2011 - TDI - Variante 1



Partie 1 : Programmation structurée

Exercice 1 : (5 pts)
Ecrire un programme en C (ou dans un langage équivalent) qui permet d’entrer un tableau de n valeurs numériques ; et de les afficher sur deux colonnes, de manière à retrouver ces valeurs dans leur ordre initial, si on les lit colonne par colonne.
Exemples d’exécution :


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


N.B. chaque ligne est affichée par une même et seule instruction de sortie.

Exercice 2 : (6 pts)
Ecrire un programme en C ou équivalent qui permet de saisir et de trier les éléments (entiers) d’un tableau au fur et à mesure de la saisie de ces éléments (c'est-à-dire, Le programme permettra au début de son exécution la saisie de la taille et des valeurs du tableau, en insérant chaque valeur reçue, de manière à ce que en fin de la saisie, le tableau soit trié, par ordre croissant. Les tableaux intermédiaires triés doivent être affichés au fur et à mesure de la saisie des valeurs).
Exemple d’exécution :


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


Exercice 3 : (4 pts)
Écrire un programme qui permet de chercher et afficher tous les entiers « cubiques » ayant trois chiffres.
Un entier naturel de trois chiffres (compris entre 100 et 999) est cubique s'il égal à la somme des cubes de ses trois chiffres.
Exemple : 153 est cubique puisque 153 = 13+53+33.

Partie 2 : Programmation orientée objet

L’objectif de cet exercice est de développer une application de gestion des demandes de congé des salariés d’une entreprise.
1. Classe Employe (3,5pts)
     a. Créer une classe Employe qui se caractérise par : Numéro de matricule, nom, prénom, date d’embauche et solde de jours de congés de l’employé. (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 employé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 toString  qui renvoie les informations d’un employé. (1 pt)
2. Classe Manager (8pts)
     a. Créer une classe Manager sous-classe de la classe Employe. elle  comporte  une liste  des employés.  Ecrire  le  constructeur  correspondant  ainsi  que  sa méthode toString qui renvoie  les informations du manager. (2 pts)
     b. Ajouter une méthode listeEmployes qui affiche la liste des noms des employés. (2 pts)
     c. Ajouter une méthode ajouterEmploye  qui permet d’ajouter un employé à la liste des employés. (2 pts)
     d. Ajouter une méthode getEmployeByCode ayant comme paramètre le numéro de matricule d’un employé et qui renvoie l’employé correspondant. (2 pts)
3. Classe DemandeConge (2,5pts)
     a. Créer une classe DemandeConge caractérisée par : code employé, date début, durée, motif, Etat (En cours, Validé, Refusé). (0,5 pt)
     b. Ajouter un constructeur à 4 paramètres : code employé, date début, durée et motif, et initialise l’état par la valeur « En cours ». (0,5 pt)
     c. Ajouter des  accesseurs pour tous les champs. (0,5 pt)
     d. Ajouter les méthodes valider et refuser qui permet de modifier l’état de la demande. (1 pt)
4. Classe GestionCongé (11pts)
     a. Créer une classe GestionCongé qui se caractérise par une liste des Manager et une liste des DemandeConge  et ajouter un constructeur sans paramètre. (1 pt)
     b. Ajouter une méthode ajouterDemandeConge qui permet d’ajouter un objet DemandeConge à la liste des demandes. (2 pts)
     c. Ajouter une méthode listeDemandeCongeEnCours qui retourne la liste des objets DemandeConge qui ont un état « en cours ». (2 pts)
     d. Ajouter une méthode listeDemandeCongeParEmploye qui retourne une liste des demandes de congé d’un employé, cette méthode a comme paramètre le code de l’employé. (3 pts)
     e. Ajouter une méthode listeDemandeCongeParManager qui retourne une liste des demandes de congé des employés d’un manager, cette méthode a comme paramètre le code du manager. (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 les informations suivantes :
     - Nom et prénom
     - Groupe
     - 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 V1 - 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 tous les stagiaires triés par ordre alphabétique des noms avec leurs notes dans une grille. (3 pts)
7. Ajouter dans cette même interface un bouton Export qui permet d’enregistrer ces données dans un fichier. (3 pts)

Aucun commentaire:

Enregistrer un commentaire