RÉPUBLIQUE TUNISIENNE |
Épreuve pratique d’informatique |
|
Sections : |
||
Coefficient de l’épreuve : 0.5 |
Durée : 1h |
Important : Dans le répertoire Bac2019, créez un dossier de travail ayant comme nom votre numéro d’inscription (6 chiffres) et dans lequel vous devez enregistrer, au fur et à mesure, tous les fichiers solutions de ce sujet. |
Un spécialiste en psychologie analytique veut faire une étude sur les heures qui se disent heures miroirs et ce, à partir des heures de naissances des nouveau-nés. Les heures miroirs sont classées selon trois types à savoir les heures miroirs doublées, les heures miroirs triplées et les heures miroirs inversées. Pour commencer cette étude, il a demandé auprès de l’administration d’un hôpital de lui fournir, pour une journée donnée, la liste des noms et prénoms des nouveau-nés ainsi que les heures de leurs naissances.
Selon la représentation horaire HH:MM, l’heure miroir est dite :
- doublée si le nombre qui représente l’heure est le même que celui qui représente les minutes (exemples 13:13, 22:22, 15:15, …)
- triplée s’il existe une séquence de trois chiffres identiques et consécutifs (exemples 22:22, 22:29, 10:00, …)
- inversée si les chiffres qui représentent les minutes sont l’inverse de ceux qui représentent l’heure (exemples 13:31, 14:41, 22:22, …)
NB : Une heure miroir peut être à la fois doublée, triplée et inversée.
Pour faire cette étude, on se propose d’écrire un programme Pascal qui permet de remplir deux tableaux NP et HN respectivement par :
- les noms et les prénoms des N nouveau-nés de la journée,
- l’heure de naissance de chacun,
puis d’afficher :
- la liste des nouveau-nés ayant une heure de naissance miroir, en précisant pour chacun le type de l’heure miroir correspondant (doublée, triplée ou inversée),
- le nombre des nouveau-nés ayant l’heure de naissance miroir doublée,
- le nombre des nouveau-nés ayant l’heure de naissance miroir triplée,
- le nombre des nouveau-nés ayant l’heure de naissance miroir inversée.
Exemple :
Pour N = 10 et les tableaux NP et HN suivants :
NP |
Rania Kefi |
Karim Salhi |
Hatem Krid |
Sahar Feki |
Maha Sessi |
Fedi Krayem |
Amin Douaji |
Dina Selmi |
Samir Siala |
Abir Zekri |
|
|
|
|
|
|
|
|
|
|
|
HN |
06:05 |
11:14 |
12:23 |
13:13 |
14:44 |
15:51 |
20:33 |
21:11 |
22:22 |
23:07 |
Le programme affiche :
Les nouveau-nés ayant l’heure de naissance miroir sont :
Karim Salhi : heure miroir triplée
Sahar Feki : heure miroir doublée
Maha Sessi : heure miroir triplée
Fedi Krayem : heure miroir inversée
Dina Selmi : heure miroir triplée
Samir Siala : heure miroir doublée
Samir Siala : heure miroir triplée
Samir Siala : heure miroir inversée
Le nombre des nouveau-nés ayant l’heure de naissance miroir doublée est 2.
Le nombre des nouveau-nés ayant l’heure de naissance miroir triplée est 4.
Le nombre des nouveau-nés ayant l’heure de naissance miroir inversée est 2.
Ci-après, un algorithme du programme principal dans lequel des modifications seront apportées pour répondre aux besoins cités ci-dessus :
0) Début HeureMiroir
1) Ecrire ("Donner le nombre de nouveau-nés : "), Lire (N)
2) PROC Remplissage (NP, HN, N)
3) PROC Affichage (NP, HN, N)
4) Fin HeureMiroir
Travail demandé :
1) Traduire l’algorithme HeureMiroir en Pascal et ajouter les déclarations nécessaires puis enregistrer le programme, dans votre dossier de travail, sous le nom "HMiroir0".
NB : Il est recommandé de limiter la taille des éléments des tableaux à 30 caractères.
2) Dans votre dossier de travail, créer une deuxième copie de ce programme et l’enregistrer sous le nom "HMiroir1". Dans ce fichier :
a- Transformer la séquence 1 en un module en ajoutant les contrôles de saisie nécessaires pour que N soit un entier de l’intervalle [3,20] et apporter les modifications adéquates dans le programme principal.
b- Développer le module Remplissage permettant de remplir :
- le tableau NP par les noms et les prénoms des N nouveau-nés de la journée, sachant que le nom et le prénom est une seule chaîne commençant par une lettre majuscule et formée au maximum de 30 caractères,
- le tableau HN par l’heure de naissance de chaque nouveau-né, et ce en respectant le format horaire HH:MM, sachant que la valeur de HH est comprise entre 0 et 23 et celle de MM est comprise entre 0 et 59 représentée chacune sur deux chiffres.
c- Développer le module Affichage permettant de faire les affichages nécessaires comme indiqué précédemment.
NB : Le candidat n’est pas appelé à respecter l’ordre d’affichage de l’exemple.
Grille d’évaluation |
|||
|
Questions |
Nombre de points |
|
|
1) Traduction de l’algorithme HeureMiroir en Pascal et ajout des déclarations nécessaires. |
3.75 |
|
|
2) a- Transformation de la séquence 1 en un module. b- Développement du module Remplissage. c- Développement du module Affichage. |
2.5 |
|