Vous êtes sur la page 1sur 13
Osa filieresinformatiq bis af 0 Group . fb.com/groups/FilieresInformatiques Office de la Formation Professionnelle Page > hace palksthexesdaformatiques ‘ectior é it Examen de fin de passage session Juillet 2018 ues.blogspot.com | Filigre : Techniques de Développement Informatique Epreuve : Synthése Niveau: TS Variante : V1 Durée : 5 heures Baréme: /120pts * Partie I: Théorie (40 pts) > Dossier 1: L'essentiel en technologies de l'information (12 pts) NB: la caleulatrice est strictement interdite. 1. Complétez le tableau suivant: 6 pts Binaire | Octal Décimal _ | Hexadécimal 11000011 67 67 oF 2. Soit la table de vérité suivante : a Seals ae On| te oe ee | So ietope Bias (osleaus oro 0 a Ks 0 iets oe eo 1 Qo 3 0 1 1 0 1 |i ete Fie rene Saasion 7% OF Syntvass Vi uit 2078 a. Donner la fonction F puis simplifier la analytiquement. b. Simplifier F moyennant le tableau de Kamaugh. > Dossier 2: Analyse et conception orientée objet (16 pts) 3pts 3 pts On souhaite développer une application permettant de passer des tests de connaissance concernant les pays du monde. Chaque pays a un nom et appartient a un continent (Afrique, Asie, Europe, etc.) Le pays contient des villes ayant un nom et une population (nombre d’habitants). Le pays a une ville capitale. Pour simplifier, on suppose que deux villes différentes n’ont ni le méme nom ni la méme population Les utilisateurs de I'application peuvent passer des tests de connaissance, Chaque test contient des questions du genre : « Quelle est la capitale de .., ? ». Les questions sont a choix multiple, cesta-dire que pour chaque question nous avons 3 réponses (2 villes générées automatiquement par application en plus de la capitale). On retient pour la question la réponse de Y'utilisateur et on enregistre pour le test la date de passation et on Tui affecte un numéro automatique. Pour pouvoir ut ser Vapplication (passer les tests et consulter les villes, les pays et les continents) ‘utilisateur doit s/authentifier. Les administrateurs de Yapplication ont pour role de gérer les continents, les pays et les villes, Ils peuvent, aussi, se servir de I'application comme les utilisateurs précédemment décrits, La gestion des utilisateurs est faite évidemment, les autres opérations d’administration), 7 un super administrateur (il effectue, bien Les opérations de gestion se font apres authentification. 1. Elaborer le diagramme de cas d'utilisation. 7.5 pts 2. Elaborer le diagramme de classes. > Dossier 3: Programmation structurée (12 pts) ‘Comme il est indiqué dans le dossier 2, une ville a un nom, une population et appartient & un pays (chaine de caractéres). Ecrivez un algorithme permettant de: 1. Déclarer la structure Ville. ipt 2. Déclarer un tableau de villes. Ipt 3. Demander a utilisateur de remplir le tableau parn villes. 2pts n doit étre supérieur strictement a 0 et ne peut pas dépasser la taille ; 1pt maximale du tableau. 4, Afficher la population totale d’un pays dont le nom est donné par 34, Vutilisateur. eI Fiore irene Season = 2 Syrtae V7 alt 2018 5) Afficher la ville la plus peuplée. Apts Partie II: Pratique (80 pts) > Dossier 1; Programmation structurée (16 pts) 1. Soit la fonction suivante : int #(int nombre) | int | sea At(neabre / 30 =» @) return 45 | norbre = norbre / 283 ives | | * [ices ee Quelle sera la valeur retournée par chacun des appels suivants : a. £(275) 2pts b. £27) 2pts « £Q) 2pls 2 En s‘inspirant de la fonction précédente, écrire la fonction chiffre(int 4pts nombre, int place) qui retourne le chiffre qui se trouve a la place spécifiée. Exemples : [nombre | place | Chiffre a retourner | (ce 5 . 7. 7 3 z | | 4 0 3. Ecrivez un programme permettant de : a. Lire un entier € compris entre 1 et 99999 jusqu’a ce que la reponse 9 pug convienne. b. Afficher, en utilisant Ja fonetion f, un message indiquant si € appartient a Y'un des intervalles suivants [1, 9}, [10, 99], [100, 999], 4 Pts [1000, 9999] ou [10000, 99999]. Exemples: [ Fire eo Session poo I 2 Sintee er 2078 1 * Sie¢=2,onaffiche:2 appartient a V'intervalle [1,9]: = Sie = 167, onaffiche : 167 appartient a T'intervalle [100, 999], = etc > Dossier 2: Programmation événementielle et orientée objet (64 pts) Une ville est caractérisée par son nom et sa population (nombre d’habitants) ; a classe Ville est définie done comme suit t class public string Non; public int Pepulation; public Ville(string nos, int population) { Populatien = populations | ba | public override string ToString() t | return Non +" (" + Population, ToString() + ~ habitants)"s } On sowhaite créer la classe Pays qui se caractérise par son nom, Ja liste des villes et Ia ville capitale de ce pays. 1. Définir les attributs de la classe ainsi que leurs propriétés sachant que : 45 pts a. Le nom ne peut pas contenir des chiffres et doit comporter au moins 4 caractéres, sinon on génére une exception. pe. b. Lacapitale doit faire partie des villes, sinon elle faut I’ajouter. 3pis 2. Ajouter les constructeurs suivants : a. Unconstructeur permettant d'initialiser le nom. 15 pt ‘b. Unconstructeur permettant d’initialiser le nom et la capitale. 2pts 3, Ajouter la propriété NombreVilles permettant de retourner le nombre de a, villes du pays en cours. ie 4, Ajouter la méthode Rechercher(String nomVille) renvoyant l'indice de la ville dont le nom est passé en paramétre s‘elle appartient au pays en cours: 3 pts et -1sinon. 5. Ajouter la méthode Ajouter(Ville ville) permettant d'ajouter la villeen paramdtre ala liste s’elle n’existe pas auparavant. es 6. Ajouter la méthode Supprimer(String nomVille) permettant de supprimer Ja ville dont le nom est passé en paramétre. S'elle s‘agit de la capitale, 14 pts faut remettre a null le champ Capital. Fibre prev ‘Session we 2 Srohese t Tuller 2078 7. Ajouter la méthode TrierParPopulation(String ordre) retournant 1a liste des villes triée par population dans ordre croissant jou, décroissant: (le... 5 pts paramétre ordre prend la valeur “croissant” ou 'décroissant’) 8, Ajouter la méthode PopulationTotale() retoumnant Je nombre d’habitants du pays. i 9, Soit le formulaire suivant : a2 Gestion des peys =e Pes o Viles : (Casablanca (e59000 habitants) | TH Rabe, 677000 nabtans) @ cris Fas (1712000 habitants) Picco Tanger {S74000 habitants) (D Décroissant vMarakesh @22250nabearts) Tier Ore ti Avec: Contréle Type Libellé ‘ComboBox | comboBox_Pays (eesblance GISECUD nesters) [> Rabat 77008 haba a re ListBox listBox_Villes IMerakech 2650 nabtarts) © Crisert RadioButton | radioButton_Croissant | | © Décrssart RadioButton | radioButton_Décroissant Ter Button dutton Trier Ore nit Button button_Ordrelnitial | : pt a. Déclarer une collection des objets Pays. 'b. Eorire le code s’exécutant au chargement qui permet de : pt i. Remplir la collection par les pays suivants : 6 pts { | Villes Pays Capitale Nom Population Casablanca _ | 3359000 | Maroc Rabat 577000 Rabat Fes 1112000 | Fire Breve Session a OF Synthese Vi Wilt 2078, | F ranger [ 974000 | ‘Tunisie 1 4/3 A ee Amman (994199 t } + \ Jordanie Zarga 395227 ) Amman } Han Piiieresintor Iwoid 250685 i ii, Charger, a partir de la collection, le ComboBox parlesnoms 3 pts des pays. Ecrire le code permetiant dafficher les villes du pays sélectionné. Apts i. Remarquez que la ville capitale est affichée différemment dees autres villes (commence par le signe -- 2pts (Caradiares SSSI Paar) | Raber 77005 hebtarts) ee 1712000 haere Hanger $7000 nabs Maralea' (23650 habitants ii. Si le pays ne contient aucune ville, on affiche le message 9 pts « Aucune ville I! » ® Gestion des pays = oO x Pave: Tune vileg : “Busane vile | Tier \ Ore rit . Programmer le bouton Trier permettant de trier les villes dans g py, Yordre choisi. Pe fe. Programmer le bouton Ordre initial permettant de rétablir Yordre 4 44 initiale des villes. E £ Ecrire le code permetiant la confirmation de la fermeture du at formulaire. pe “ire trove Session a a Sinihee VE Duet 2078 fb.com/groups/FilieresInformatiques ionnelle. Eillare : Techniques de Développement Informatique Epreuve : Synthése Niveau: TS Durée : 5 heures Sse % Partie I: Théorie (40 pts) > Dossier 1: L'essentiel en technologies de l'information (12 pts) NB: la calculatrice est strictement interdite. 1. Complétez Je tableau suivant: eee Binaire Octal Décimal _| Hexadécimal | _111100 ] [131 | 131 | l 131 2. Soit la table de vérité suivante : Fiero Eoreure 2 ‘Synthase VE eet 2078. a. Donner la fonction F définie par la table précédente. 2pts b. Simplifier la fonction F analytiquement. 2pts ¢. Simplifier F moyennant le tableau de Karnaugh. Poe > Dossier 2: Analyse et conception orientée objet (16 pts) Nous souhaitons développer une application permettant de gérer les régions des pays de Yunion du Maghreb arabe. Chaque région a un nom et appartient a un pays (Maroc, Algerie, Tunisie, etc.) Les régions contiennent des circonscriptions administratives ayant un nom et une population (nombre d’habitants). La région a une circonscription principale (un chef-lieu). Pour simpllfier, on suppose que deux circonscriptions différentes n’ont ni le méme nom nila méme population. Les utilisateurs de application peuvent passer des tests de connaissance. Chaque test contient des questions du gense: « Quelle est la circonscription principale de ... ?». Les questions sont a choix multiple, Cest-&-dire que pour chaque question nous avons 3 réponses (2 circonscriptions générées automatiquement par I'application en plus de la circonscription principale). On retient pour la question la réponse de T'utilisateur et on enregistre pour le test la date de passation et on Tui affecte un numéro automatique Les administrateurs de I'application ont pour réle de gérer les pays, Jes régions et les Girconscriptions. Ils peuvent, aussi, se servir de Yapplication comme les utilisateurs précédemment décrits. La gestion des utilisateurs est faite par un responsable (il effectue, bien évidemment, les autres opérations d’administration) Pour pouvoir utiliser I’application (passer les tests et consulter et gérer les circonscriptions, Jes régions et es pays) 'utilisateur doit s‘authentifier. Chaque utilisateur a un login et un mot de passe pour se connecter. 1, Elaborer le diagramme de cas d'utilisation, 75 pts 2. Elaborerle diagramme de classes, 85 pts lee peu Session a or Synthese V2 Voie 2078 > Dossier 3: Programmation structurée (12 pts) Comme il est indiqué précédemment, une circonscription a_un nom, une population et appartient a une région (chaine de caractéres). Ecriver, un algorithme permettant de 1. Déclarer la structure Circonscription. 2. Déclarer un tableau de circonscriptions. 3. Demander a I'utilisateur de remplir le tableau par n circonscriptions. n doit étre supérieur strictement a 0 et ne peut pas dépasser la taille maximale du tableau. 4, Afficher la population totale d’une région dont le nom est donné par Yutilisatewr. 5, Afficher la eizconscription la moins peuplée. + Partie II: Pratique (80 pts) > Dossier 1: Programmation structurée (16 pts) 1. Soit la fonction suivante : int #(int nowbre) char nonbeeTostring[1¢]; sprintf(nonbreToString, "Sd", nonbre)s return strlen(nonbreToString)s Ipt Ipt 2pts ipt 3 pis 4pis Rappel: La fonction sprintf fonctionne comme printf, mais au lieu d’écrire sur la sortie standard (la console), elle écrit dans une chaine de caractéres. Exemple; Le contenu de Ja variable ch (de type chaine de caractéres) aprés I’appel suivant sprintf(ch, "WdedeAd"s 25 35 5)s est: 2 | Sele ea [xe ‘Quelle sera la valeur retournée par chacun des appels suivants : a. £3) 2pts b. £(38) 2pts c. £387) 2pts 2, En utilisant la fonctions sprintf, écrite la fonction estUniforme(int nombre) qui vérifie que nombre est uniforme. ets Faia ion Santon a 2 Synmnase v2 let 2078 Unnombre uniforme est un entier naturel Formé par la répétition @/'seul chiffre, Exemples : = 8,111, 333 ct 77777 sont tous des nombres uniformes. = 55,15 et 387 ne sont pas des nombres uniformes. 3, Ferivez un programme permettant de: a. Lire un enticr € compris dans I'interyalle [2, 100000] jusqu’a ce que,» pg la réponse convienne. b. Afficher, en utilisant la fonction f, un message indiquant si € appartient a 'un des intervalles suivants: [1, 10[, [10, 100f, [100, 4 pts 1000{, [1000, 10000] ou [10000, 100000], Exemples: * Sie =7, onaffiche : 7 appartient aYintervalle (1, 10]. = Si@ = 259, on affiche : 259 appartient a I'intervalle [100, 1000]. * ete, File Brwe T ‘Sesion a Or Synthese VP t alles 2078 > Dossier 2: Programmation événementiclle et orientée objet (64pts) Soit la classe Circonseription definie comme suit: c publicystring tk | public ir Ge cpulation; public Circonscription(string nox, int population) { or = nos Population = population; public override string ToString() t (+ Populatic return Nom + n.Testring() +” hab: Nous souhaitons créer la classe Régions qui se caractérise parson nom, la liste des circonscriptions et la circonscription principale. 1. Définir les attributs de la classe ainsi que leurs propriétés sachant que a. Le nom ne peut pas contenir des chiffres et doit comporter au moins 4 caractéres, sinon on génére une exception. b. La circonscription principale doit faire partie des circonscriptions, sinon elle faut l'ajouter. 2. Ajouter les constructeurs suivants a. Unconstructeur permettant d'initialiser le nom. b. Un constructeur permettant d’initialiser le nom et la circonscription principale. 3. Ajouter la propriété NombreCirconscriptions permettant de retourner le nombre de circonscriptions de la région en cours. Ajouter la méthode Rechercher(String nomCirconscription) renvoyant Yindice de la crconscription dont le nom est passé en paramétre s‘elle appartient a la région en cours et-1 sinon. 5, Ajouter la méthode Ajouter(Circonscription circonscription) permettant dajouter Ia circonscription en paramétre a la liste s‘elle r’existe pas auparavant. Ajouter la méthode Supprimer(String nomCirconscription) permettant de supprimer Ja circonscription dont le nom est passé en paramétre. S'elle s‘agit de la circonscription principale, Il faut remettre & null le champ CirconscriptionPrincipal. 7, Ajouter la méthode TrierParPopulation(String ordre) retournant 1a liste des circonscriptions triée par population dans ordre spécifiée en argument (croissant ou décroissant). 8, Ajouter la méthode PopulationTotale() retournant le nombre d’habitants 45 pts 3pls 3pts 15 pt 2pts 2pis 3 pts 3 pis 4pts 5 pts 3 pts Fibre orawve Sassion iE Or Synthase V2 let 2075 1 de la région. 9. Soit le formulaire suivant : Gestion des régions = ph Région > Cessblance-Settat ‘Vies[Frelecture de Mohammeda hebiaris) => Prifgcture de Casablanca 2343805 habtarts) Province de Navacaur 226118 heblterss) Province de thddouna (122857 habitats) Harskech (S23850 habitat te Avec: Contréle Type Libellé Casablanca See ~ | ComboBox | comboBox Régions Fdledure ce Vorenndda GLDSShaDiaTN) | |S Faecuie de Canesonce (2949608 habtet) Province de Nouoseur 236119 habbants) ListBox listBox_Circonscriptions Province de Médiouna {122851 habRants} | Lipsey 200 papa | RadioButton | radioButton_Croissant RadioButton | radioButton_Décroissant Button button Trier I Button. button_Ordrelnitial a. Déclarer une collection des objets Région. ipt b. Ecrire le code s‘exécutant au chargement qui permet de : ipt Remplir la collection par les pays suivants: te " a T Circonscriptions ‘ ro Région | Cireonseription ‘Nom Population | _Principale Préfecture de 2228¢ Mohammédia 2 S | Préfecture de 2 Casablanca | Casablanca _| 2749805 | pemereae | | Settat Province de 236119 Casablanca | | Nouaceur | Province de Médiouna _| 122851 Fare pane T Sean a 2 I Satie 1 iter 2078 ‘Marrakech:Saft 2 > | Province de Sakia Fl Hama |//Boujdour [Province de | Tarfaya 10410 Laayoune: [tatyoune | 002 aiyoune: [Province de 1649 Province de ip Charger, partir de la collection, le ComboBox par les noms 4. des régions. a c. Eerire le code permettant d/afficher les circonscriptions dela région 4. sélectionnée. Pi i. Remarquez, que la circonscription principale est affichée 4. différemment des autres circonscriptions : e Precis de Nahanmddle C256 habia > Pafactue de Conaberica (245605 hobtaris) Provnee de Nouaoew (236119 habtarts) Provnce de Mecoune (122851 nabearee) anekech 26850 Sila région ne contient aucune cisconscription, on affiche le 44. message « Aucune circonscription 1! ». rE 33 Gestion des régions Se ox Région: arakech Sali Re ee. Miles: "Tucune direansexption | : © Crossat © Déenissant Tier Orde intl 4. Programmer le bouton Trier permettant de trier les cixconscriptions ' apts dans l'ordre choisi. fe. Programmer le bouton Ordre initial permettant de rétablit Yordre gp, initiale des circonscriptions. es f. Ecrire le code permettant la confirmation de la fermeture du 3pts formulaire. Fire Brews Season 77 21 Synnase V2 let 2018

Vous aimerez peut-être aussi