OFPPT Office de la Formation Professionnelle et de la Promotion du ...

... et prénom et le numéro de la variante de l'examen comme suit "
NOM_PRENOM_Variante". Partie 1 : Programmation Structurée (15 pts) ... Partie
2 : Programmation Orientée Objet (25 pts) ... Partie 3 : Programmation
Evénementielle (20 pts).

Part of the document


|[pic] | |
|OFPPT | |
| |[pic] |
| |Office de la Formation Professionnelle |
| |et de la Promotion du Travail |
Direction Recherche et Ingénierie de la Formation
| | |
|Filière : Techniques de Développement Informatiques|Epreuve : Pratique - V1-3|
| | |
| |Barème : 60 points |
|Niveau : Technicien Spécialisé |Durée : 4h30mn |
Variante 1-3 Important : assurez-vous que tous les éléments de vos projets sont
sauvegardés dans un dossier portant votre nom et prénom et le numéro de la
variante de l'examen comme suit "NOM_PRENOM_Variante". Partie 1 : Programmation Structurée (15 pts) 1. Ecrire un programme en C ou équivalent permettant de compter le nombre
de puissances successives (inférieurs à 1000) d'un nombre entier donné par
l'utilisateur, puis de les afficher du plus grand au plus petit. (5 pts)
Rappel : Les puissances successives de 2 sont : 20 = 1, 21 = 2, 22 = 4, 8,
16, 32, 64, 128... Exemple d'exécution : 2. Ecrire un programme en C ou équivalent permettant de saisir un tableau
de 10 valeurs entières, et d'ajouter à l'ensemble des éléments du tableau
la valeur du nème élément du tableau, n étant saisi par l'utilisateur. (4
pts) Exemple d'exécution :
3.
a- Ecrire une fonction nommée « puissance(x,y) » permettant de retourner
xy, avec x et y des réels passés en paramètres . (2 pts) b- Ecrire un programme qui utilise la fonction « puissance» de la question
a) pour calculer la somme :
1/x0 + 1/x1 + 1/x2 + ... + 1/xn pour x réel donné et n entier donné saisis
au clavier. (4 pts)
Exemple d'exécution : Partie 2 : Programmation Orientée Objet (25 pts) L'objet de cette application est la gestion informatisée du cabinet
médical, Elle doit procéder à la gestion informatisée des dossiers médicaux
des patients et elle s'occupe également de la gestion des rendez-vous et
des visites. 1. Classe Patient. (2,5pts)
a. Définir une classe Patient dont les caractéristiques sont : Code
patient (affecté de façon incrémentale par rapport au nombre de
patients), Nom, Prénom, Date de naissance, Adresse, Tél, E-mail. (0,5
pt)
b. Ecrire un constructeur à deux paramètres : Nom et prénom. (0,5 pt)
c. Écrire un deuxième constructeur avec tous les paramètres. (0,5 pt)
d. Écrire les accesseurs des champs et la méthode afficher qui affiche
les informations d'un patient. (1 pt)
2. Classe Visites. (2,5pts)
a. Définir une classe Visites dont les caractéristiques sont Date visite,
Heure visite, Code patient, Montant payé. (0,5 pt)
b. Ecrire un constructeur à trois paramètres : Date visite et Heure
visite et code patient. (0,5 pt)
c. Écrire un deuxième constructeur à un seul paramètre : code client et
qui initialise la date et l'heure avec la date et l'heure actuelle.
(0,5 pt)
d. Écrire les accesseurs des champs et la méthode afficher qui affiche
les informations de cette visite. (1 pt)
3. Classe RendezVous(2pts)
a. Définir une classe RendezVous dont les caractéristiques sont : Date
RendezVous, Heure RendezVous , Code patient, Observation. (0,5 pt)
b. Ecrire un constructeur à trois paramètres : Date RendezVous ,Heure
RendezVous et code de patient. (0,5 pt)
c. Écrire les accesseurs des champs et la méthode afficher qui affiche
les informations de ce rendez-vous. (1 pt)
4. Classe CabinetMedical (18pts)
a. Définir une classe CabinetMedical dont les caractéristiques sont : une
liste des patients, une liste des visites et une liste des rendez-
vous. (1 pt)
b. Ajouter une méthode ajouterPatient qui ajoute un patient à l'ensemble
des patients du cabinet. (2 pts)
c. Ajouter une méthode patientExitant ayant comme paramètre le nom et le
prénom et qui retourne « vrai » si le patient existe et « faux »
sinon. (2 pts)
d. Définir une classe d'exception : exceptionMontant. (1 pt)
e. Ajouter une méthode ajouterVisite qui ajoute une visite, et lève
l'exception définie en d) si le montant payé est négatif. (2 pts)
f. Ajouter une méthode recetteDuJour qui, pour une date donnée comme
paramètre, affiche la somme d'argent encaissée ce jour. (2 pts)
g. Ajouter une méthode patientAyantDesVisites qui affiche la liste des
patients ayant visité le cabinet pendant la dernière semaine. (3 pts)
h. Ajouter une méthode annulerRDV qui permet d'annuler un rendez-vous. (2
pts)
i. Ajouter une méthode exporterRDV qui permet d'enregistrer la liste des
rendez-vous dans un fichier. (3 pts) Partie 3 : Programmation Evénementielle (20 pts) Soit l'interface d'inscription suivante : [pic] 1- Créer cette interface. (4 pts)
2- Créer une classe Stagiaire caractérisée par : Nom, prénom, sexe,
option et âge. (2 pts)
3- Ecrire le code correspondant au bouton Ajouter qui permet d'ajouter un
stagiaire dans une collection d'objets Stagiaires et de l'afficher
dans la grille. (3 pts)
4- Ecrire le code correspondant au bouton Supprimer qui permet de
supprimer un stagiaire sélectionné dans la grille, l'application doit
afficher un message de confirmation avant de supprimer le stagiaire et
un message d'erreur si aucune ligne n'est sélectionnée. (4 pts)
5- Ajouter un bouton Rechercher qui permet de rechercher un stagiaire par
nom saisi dans la zone de texte « Nom » et d'afficher toutes les
informations concernant ce stagiaire au niveau des zones
correspondantes de l'interface. (4 pts)
6- Créer un bouton Afficher qui permet d'afficher dans la grille la liste
des stagiaires d'une option donnée choisie parmi les boutons
d'options. (3 pts)
Barème de notation : Partie 1 : (15 pts) |Question |Note |
|1 |5 |
|2 |4 |
|3 |6 |
Partie 2 : (25 pts) |Question |Note |
|1. a |0.5 |
|1. b |0.5 |
|1. c |0.5 |
|1. d |1 |
|2. a |0.5 |
|2. b |0.5 |
|2. c |0.5 |
|2. d |1 |
|3. a |0.5 |
|3. b |0.5 |
|3. c |1 |
|4. a |1 |
|4. b |2 |
|4. c |2 |
|4. d |1 |
|4. e |2 |
|4. f |2 |
|4. g |3 |
|4. h |2 |
|4. i |3 | Partie 3 : (20 pts) |Question |Note |
|1 |4 |
|2 |2 |
|3 |3 |
|4 |4 |
|5 |4 |
|6 |3 |
-----------------------
Le nombre de puissances successives (