EP - Examen Passage 2011 - TDI -Théorie - Algo - C - POO - Merise
Partie 1: Connaissances générales et logique :
1- Définissez brièvement les termes suivants: ROM UAL MIPS CMOS 2- Quelle est la différence entre les deux mémoires vives DRAM et SRAM? 3- Remplir les cases du tableau suivant par les nombres correspondants, écrits dans les systèmes de numération spécifiés.
EP - Examen Passage 2011 - TDI -Théorie - Algo - C - POO - Merise
Chaque colonne correspondant au système spécifié; et chaque ligne au même nombre. 4- Soit la table de vérité suivante :
EP - Examen Passage 2011 - TDI -Théorie - Algo - C - POO - Merise
a- Donner les expressions algébriques des deux fonctions logiques F1 et F2. b- Simplifier, par la méthode de Karnaugh, la fonction F2.
Partie 2: Techniques et langages de programmation structurée:
Exercice 1: Donner la syntaxe du schéma itératif "Tanque"; et expliquer son fonctionnement Exercice 2: Pour chaque des deux séquences algorithmiques suivantes, dire s'il est possible de simplifier son écriture. Si oui, comment; et sinon pourquoi?
EP - Examen Passage 2011 - TDI -Théorie - Algo - C - POO - Merise Exercice 3: une matrice carrée est un tableau à deux dimensions dont le nombre de lignes est égale au nombre de colonnes. Une matrice est dite équilibrée si la somme de éléments de chaque ligne est égale à zéro, la somme des éléments de chaque colonne est égale à zéro et la somme de éléments de deux diagonales est égale à zéro aussi. Écrire un algorithme qui lit une matrice carrée d'entiers et vérifie si elle est équilibrée ou non. Vous devez afficher soit la mention "Votre matrice et équilibrée" ou la mention "Votre matrice est non équilibrée". Exercice 4: Écrire un programme dans un langage de programmation structurée, qui permet de trouver les nombres premiers inférieurs ou égaux à un entier N donné par l'utilisateur. La méthode consiste à remplir un tableau, dans l'ordre du plus petit au plus grand, par les entiers compris entre 2 et N (N étant l'entier limite précisé par l'utilisateur); puis de parcourir le tableau depuis le début, en gardant un entier rencontré et éliminant tous les multiples, par leur mise à zéro par exemple. A la fin du parcours, tous les entier restants (non nuls) ont des nombres premiers.
Partie 3: Programmation orientée objet:
Dan une application Windows tous les contrôles (fenêtres, bouton, zones de texte, cases à cocher ...) sont caractérisés par un nom (de type chaine de caractères), une position haut et une position gauche (de type entier) de l'objet sur l'écran. Une fenêtre et un contrôle comme les autres, caractérisée en plu d'un titre et d'une couleur d'arrière plan (de type entier). 1- Créer les classe Contrôle et Fenêtre avec un constructeur d'initialisation, un constructeur de copier, sachant que la classe Fenêtre hérite de la classe Contrôle. 2- Doter la classe Contrôle par la méthode Display qui permet d'afficher la mention suivante: "Le contrôle Texte1 et situé à la position 12x25" Avec Texte1 est le nom du contrôle et 12,25 représentent respectivement la position gauche, haut du contrôle sur l'écran. 3- Redéfinir la méthode Display pour la classe Fenêtre pour afficher la mention suivante: "Le contrôle Text1 est situé à la position 12x25, ayant comme titre "titre1" et une couleur d'arrière plan de 240". On souhaite ajouter à la classe Fenêtre une propriété type collection qui permet de gérer une liste de contrôles que l’utilisateur peut ajouter sur une fenêtre (zones de texte, lite déroulante, ...). 4- Donner le modifications à apporter à la classe Fenêtre et la méthode AjoutControle qui permet d'ajouter un contrôle à la collection. 5- Implémenter pour la classe Fenêtre la méthode RetireControle qui permet du supprimer un contrôle de la collection connaissant son nom. 6- Implémenter pour le classe Fenêtre la méthode DisplayTout qui permet d'afficher tous les contrôles ajouté à la fenêtre.
Partie 4: Conception de Systèmes d'informations:
Gestion d'un cabinet d'architecture Vous êtes appelé à concevoir un système de gestion pour un cabinet d'architecture, au sein duquel on réalise de projets architecturaux. l'étude préalable résulte des contacts suivants : Le personnel du cabinet est constitué de plusieurs architectes, dessinateurs et du personnel administratifs, pour lesquels on enregistre un matricule, un nom, un prénom, une fonction, et une date d'embauche. La cabinet et chargé par le client, appelé maître d'ouvrage, de concevoir le projet architectural. les maître d'ouvrage peuvent être des particuliers, des institutions publiques et privées, des promoteurs, entre autre. Pour le uns, comme pour les autres, on affecte une référence; et on enregistre le nom ou l'intitulé, l'adresse et le numéro de téléphone. Un maître d'ouvrage, et enregistré lors de son première contact avec le cabinet, et il garde la référence, qui lui est affectée au début pour tous le projets qu'il a passé au cabinet. Un projet est caractérisé par un numéro de référence, une date de dépôt, une date de remise prévisionnelle, un type (maison, immeuble, ...), une adresse, une superficie totale et bâtie, le type des travaux envisagés (construction ou aménagement), et une rémunération (prix du projet). Un seul architecte est chargé du projet, mais plusieurs dessinateurs peuvent intervenir dans la réalisation du projet. le personnel administratif du cabinet intervient dan le projet au niveau de la constitution du dossier auprès des autorités sous les directives de l'architecte considéré comme chef du projet. A la remise du projet, la date de fin effective de sa réalisation est enregistrée.
Travail à faire : 1- Donner un modèle conceptuel de données. 2- Déduire le modèle logique de données.
Examens de Passage - Pratique - TDI - 2010 - Jour 1 - Variante 1
PARTIE I : PROGRAMMATION STRUCTUREE EN C OU C++
1. La Direction d’un supermarché a décidé d’accorder des réductions à ses clients selon le montant d’achat La réduction est calculée selon les règles suivantes : - 20% pour un montant d’achat de plus de 5000 dhs - 15% pour un montant d’achat entre 3000 dhs < MonantAchat ≤5000 dhs - 10% pour un montant d’achat entre 1000 dhs < MonantAchat ≤3000 dhs - Aucune réduction pour un montant d’achat inférieur à 1000 dhs Ecrire un programme qui permet de calculer et d’afficher la réduction et montant à payer. (1 Pt) 2. La Direction d’une entreprise désire automatiser le calcul de l’indemnité à verser aux cadres en cas de licenciement. Après un an d’ancienneté dans l’entreprise, il sera alloué aux cadres licenciés une indemnité tenant compte de leur ancienneté et s’établissant comme suit : - la moitié du salaire d’un mois par année d’ancienneté : pour la tranche d’ancienneté entre 1 et 10 ans - au delà de 10 ans un mois de salaire par année d’ancienneté - une indemnité supplémentaire serait allouée aux cadres âgés de plus de 45 ans de : - 2 mois si le cadre est âgé de 46 à 49 ans - 5 mois si le cadre est âgé de plus de 50 ans. Ecrire un programme qui permet de saisir l’âge, l’ancienneté et le dernier salaire et d’afficher l’indemnité du cadre. (1.5 pts)
PARTIE II : PROGRAMMATION ORIENTEE OBJET EN VB.NET, C# OU JAVA
On souhaite gérer la répartition des modules entre les formateurs d’un institut de formation professionnelle. Soit la classe module qui modélise un module et qui comportera les attributs suivants : reference intitule formateur (matricule du Formateur qui enseigne ce module) Soit la classe Formateur qui modélise un Formateur et qui comportera les attributs suivants : matricule nom prenom echelle listeModule
Travail à faire : 1- Codage de la classe Module a. Ecrire la classe Module avec un compteur des objets créés. (1pt) 2- Codage de la classe Formateur a. Ecrire la classe Formateur avec un compteur des objets créés. (1pt) 3- Ajouter la méthode compare qui teste l’égalité de 2 objets Formateur (2 objets Formateur sont égaux s’ils ont le même matricule). (1pt) 4- Créer une exception nommée erreurEchelle qui se déclenche lors de la saisie d’une échelle de formateur qui n’est pas comprise entre 1 et 20. (1pt) 5- Ajouter une méthode choixEnseignant qui désigne l’enseignant d’un module. (1pt) 6- Ajouter une méthode supprimerFormateur qui annule le choix de l’enseignant d’un module. (1pt) 7- Ajouter une méthode ajouterFormateur qui ajoute un module à la liste des modules pris en charge un formateur. (1pt) 8- Ajouter une méthode supprimerModule qui supprime un module de la liste des modules d’un formateur. (1pt) 9- Ecrire un programme de test qui crée 4 formateurs et 5 modules : (1pt) 10- Ecrire un programme permettant d’enregistrer les objets crées dans deux fichiers texte : Formateurs.txt et Modules.txt (1pt)
PARTIE III : PROGRAMMATION ÉVÉNEMENTIELLE EN VB.NET, C# OU JAVA
Pour plus convivialité, on souhaite développer quelques fonctionnalités de l’application de gestion de la répartition des modules en mode graphique. 1- Créer une interface qui permet la gestion des modules. a. Ajouter un module (0.5pt) b. Supprimer un module selon sa référence. (0.5pt) c. Modifier un module selon sa référence. (0.5pt) d. Rechercher un module selon sa référence ou son intitulé. (1pt) e. Afficher dans un label le nombre des modules créés (0.5pt) 2- Créer une interface qui permet la gestion des formateurs. a. Ajouter un formateur. (0.5pt) b. Supprimer un formateur selon son matricule. (0.5pt) c. Modifier les informations d’identité d’un formateur. (0.5pt) d. Rechercher un formateur selon son matricule. (0.5pt) e. Afficher l’ensemble des formateurs dans une grille (0.5pt) 3- Créer un menu permettant d’accéder à ces différentes fonctionnalités. (0.5pt)
Examens de Passage - Pratique - TDI - 2010 - Jour 1 - Variante 2
PARTIE I : PROGRAMMATION STRUCTUREE EN C OU C++
1. La Direction d’une entreprise désire automatiser le calcul de l’indemnité à verser aux cadres en cas de licenciement. Après un an d’ancienneté dans l’entreprise, il sera alloué aux cadres licenciés une indemnité tenant compte de leur ancienneté et s’établissant comme suit : - la moitié du salaire d’un mois par année d’ancienneté : pour la tranche d’ancienneté entre 1 et 10 ans - au delà de 10 ans un mois de salaire par année d’ancienneté - une indemnité supplémentaire serait allouée aux cadres âgés de plus de 45 ans de : - 2 mois si le cadre est âgé de 46 à 49 ans - 5 mois si le cadre est âgé de plus de 50 ans. Ecrire un programme qui permet de saisir l’âge, l’ancienneté et le dernier salaire et d’afficher l’indemnité du cadre. (1.5 pts) 2. Ecrire un programme permettant de trier un tableau de n réels dans un ordre croissant en utilisant la méthode de tri bulle (1 pt) 3. Ecrire un algorithme qui effectue la lecture d’une matrice carrée A ainsi que sa taille n et affiche la trace de A. (1 pt) (Pour une matrice A(ai,j), Trace(A)=Σai,i la somme des éléments sur la diagonale). 4. Ecrire un programme qui demande à l'utilisateur de saisir un entier N et qui affiche la figure suivante sous forme des étoiles. (0.5 pt) N=3 *** ** *
PARTIE II : PROGRAMMATION ORIENTEE OBJET EN VB.NET, C# OU JAVA
On souhaite développer une application pour la gestion des modules enseignés par des professeurs dans une Ecole privée. Soit la classe module qui modélise un module et qui comportera les attributs suivants : reference intitule professeur (matricule du Professeur qui enseigne ce module) Soit la classe Professeur qui modélise un Professeur et qui comportera les attributs suivants : matricule nom prenom echelle listeModule
Travail à faire : 1- Codage de la classe Module a. Ecrire la classe Module avec un compteur des objets créés. (1pt) 2- Codage de la classe Professeur a. Ecrire la classe Professeur avec un compteur des objets créés. (1pt) 3- Ajouter la méthode compare qui teste l’égalité de 2 objets Professeur (2 objets Professeur sont égaux s’ils ont le même matricule). (1pt) 4- Créer une exception nommée erreurEchelle qui se déclenche lors de la saisie d’une échelle de professeur qui n’est pas comprise entre 8 et 11. (1pt) 5- Ajouter une méthode choixProfesseur qui désigne l’enseignant d’un module. (1pt) 6- Ajouter une méthode supprimerProfesseur qui annule le choix de l’enseignant d’un module. (1pt) 7- Ajouter une méthode ajouterModule qui ajoute un module à la liste des modules pris en charge par un professeur. (1pt) 8- Ajouter une méthode supprimerModule qui supprime un module de la liste des modules d’un professeur. (1pt) 9- Ecrire un programme de test qui crée 4 professeurs et 5 modules : (1pt) 10- Ecrire un programme permettant d’enregistrer les objets crées dans deux fichiers texte : Professeurs.txt et Modules.txt (1pt)
PARTIE III : PROGRAMMATION EVENEMENTIELLE EN VB.NET, C# OU JAVA
Pour plus de convivialité, on souhaite développer quelques fonctionnalités de l’application de gestion de la répartition des modules en mode graphique. 1- Créer une interface qui permet la gestion des modules. a. Ajouter un module (0.5pt) b. Supprimer un module selon sa référence. (0.5pt) c. Modifier un module selon sa référence. (0.5pt) d. Rechercher un module selon sa référence ou son intitulé. (1pt) e. Afficher dans un label le nombre des modules créés (0.5pt) 2- Créer une interface qui permet la gestion des professeurs. a. Ajouter un professeur. (0.5pt) b. Supprimer un professeur selon son matricule. (0.5pt) c. Modifier les informations d’identité d’un professeur. (0.5pt) d. Rechercher un professeur selon son matricule. (0.5pt) e. Afficher l’ensemble des professeurs dans une grille (0.5pt) 3- Créer un menu permettant d’accéder à ces différentes fonctionnalités. (0.5pt)
Examens de Passage - Pratique - TDI - 2010 - Jour 1 - Variante 3
PARTIE I : PROGRAMMATION STRUCTUREE EN C OU C++
1. Ecrire un programme permettant de saisir le prix unitaire et la quantité commandée d’un article. Le programme affichera le prix à payer, le port, et la remise sachant que : -Le port est gratuit si le montant hors taxe est supérieur à 1000 dh -Le port est 3% dans le cas contraire -la remise est de 5 % si le montant hors taxe est compris entre 300 et 1000 et de 10% au -delà de 1000 (1 pt) NB : Montant hors Taxe = prix unitaire x quantité commandée 2. Ecrire un algorithme qui effectue la lecture d’une matrice carrée A ainsi que sa taille n et affiche la trace de A. (1 pt) (Pour une matrice A(ai,j), Trace(A)=Σai,i la somme des éléments sur la diagonale). 3. Ecrire un programme qui demande un entier N positif, et deux entiers Bd et Ba (compris entre 2 et 10) et convertit N de la base Bd en base Ba. (2 pts)
PARTIE II : PROGRAMMATION ORIENTEE OBJET EN VB.NET, C# OU JAVA
On souhaite développer une application pour la gestion des modules enseignés par des enseignants dans une Ecole privée. Soit la classe module qui modélise un module et qui comportera les attributs suivants : reference intitule enseignant (matricule de l’enseignant qui enseigne ce module) Soit la classe Enseignant qui modélise un Enseignant et qui comportera les attributs suivants : matricule nom prenom echelle listeModule
Travail à faire : 1- Codage de la classe Module a. Ecrire la classe Module avec un compteur des objets créés. (1pt) 2- Codage de la classe Enseignant a. Ecrire la classe Enseignant avec un compteur des objets créés. (1pt) 3- Ajouter la méthode compare qui teste l’égalité de 2 objets Enseignant (2 objets Enseignant sont égaux s’ils ont le même matricule). (1pt) 4- Créer une exception nommée erreurEchelle qui se déclenche lors de la saisie d’une échelle de enseignant qui n’est pas comprise entre 8 et 11. (1pt) 5- Ajouter une méthode choixEnseignant qui désigne l’enseignant d’un module. (1pt) 6- Ajouter une méthode supprimerEnseignant qui annule le choix de l’enseignant d’un module. (1pt) 7- Ajouter une méthode ajouterModule qui ajoute un module à la liste des modules pris en charge par un enseignant. (1pt) 8- Ajouter une méthode supprimerModule qui supprime un module de la liste des modules d’un enseignant. (1pt) 9- Ecrire un programme de test qui crée 4 enseignants et 5 modules : (1pt) 10- Ecrire un programme permettant d’enregistrer les objets crées dans deux fichiers texte : Enseignants.txt et Modules.txt (1pt)
PARTIE III : PROGRAMMATION EVENEMENTIELLE EN VB.NET, C# OU JAVA
Pour plus de convivialité, on souhaite développer quelques fonctionnalités de l’application de gestion de la répartition des modules en mode graphique. 1- Créer une interface qui permet la gestion des modules. a. Ajouter un module (0.5pt) b. Supprimer un module selon sa référence. (0.5pt) c. Modifier un module selon sa référence. (0.5pt) d. Rechercher un module selon sa référence ou son intitulé. (1pt) e. Afficher dans un label le nombre des modules créés (0.5pt) 2- Créer une interface qui permet la gestion des enseignants. a. Ajouter un enseignant. (0.5pt) b. Supprimer un enseignant selon son matricule. (0.5pt) c. Modifier les informations d’identité d’un enseignant. (0.5pt) d. Rechercher un enseignant selon son matricule. (0.5pt) e. Afficher l’ensemble des enseignants dans une grille (0.5pt) 3- Créer un menu permettant d’accéder à ces différentes fonctionnalités. (0.5pt)
Télécharger Les Examens de Passage - Pratique - TDI - 2010 - Jour 1 - V1 - V2 - V3 :
Examens de Fin de Formation Pratique 2009 Variante 1
Partie I : Gestion de réservations
On désire développer une application pour la gestion des réservations d’un RIAD. Les analystes chargés de l’étude technique ont proposé la première version du modèle relationnel ci-dessous :
Travail à faire : 1. Créez la base de données sous SQL SERVER ou ORACLE et saisissez quelques enregistrements pour le test. 2. Créer une interface de mise à jour des tables Client et RIAD a. Affichage des enregistrements. b. Ajout (le contrôle de saisie est obligatoire avec confirmation d’ajout). c. Modification. d. Suppression. 3. Créer une interface de mise à jour des tables Région et type hébergement. 4. Créer une interface de mise à jour des tables Négocier et Réservation. 5. Créer une feuille de recherche : a. Réservations entre deux dates. b.Réservations d’un client donné. 6. Ajouter une fonction remise permettant de bénéficier les client d’une remise automatique de 10% durant la période de Février, Mars et Avril. 7. Créer un état permettant de lister les réservations enregistrées et le nombre de réservations par mois. 8. Créer un graphe permettant d’afficher les statistiques des réservations par mois. 9. Créer une page web permettant d’afficher les Riads par région, le choix de la région se fait depuis une liste. 10. Créer une page web permettant de mettre à jour les tables RIAD et CLIENT a. Ajout. b. Modification. 11. Créer une page web permettant aux clients de faire une réservation en ligne. 12. Proposer une solution pour que les clients puissent négocier les prix de séjour en ligne.
Partie II : Simulateur de crédit en ligne
On désire développer un petit simulateur de crédit en ligne. 1. Créer une page Web contenant le formulaire suivant :
Examens de Fin de Formation Pratique 2009 V1-V2-V3
2. La mensualité à rembourser par le client est calculée selon la formule suivante : mensualité = (Montant x T)/(1-(1+T)^-P) Avec : T = Taux / 1200 P = duree * 12
Le montant d’assurance mensuel est calculé selon la formule suivante : Assurance = Montant * 0.00035 Réaliser un programme en (ASP.Net, JSP ou PHP) permettant de calculer la mensualité et afficher les informations (Montant du prêt, Taux, Durée, Assurance, Mensualité hors assurance, Mensualité avec assurance). Le contrôle de saisie est obligatoire.
Exemple : Pour un prêt de 20000 Dhs, avec un Taux de 9% sur une durée de 1 an
Examens de Fin de Formation Pratique 2009 V1-V2-V3
3. On souhaite ajouter un tableau d’amortissement du prêt, permettant d’afficher les détails du plan d’amortissement en fonction de la durée du crédit. Les intérêts, l’amortissement et le montant restant sont calculés selon les formules suivantes : intérêt = Montant x T amortissement = mensualité – intérêt Montant restant = Montant restant – amortissement
Exemple : Pour un prêt de 20000 Dhs, avec un Taux de 9% sur une durée de 1 an
Examens de Fin de Formation Pratique 2009 V1-V2-V3
Examens de Fin de Formation Pratique 2009 V1-V2-V3
Examens de Fin de Formation Pratique 2009 Variante 2
Partie I : Gestion de réservations.
On désire développer une application pour la gestion des réservations d’un HOTEL. Les analystes chargés de l’étude technique ont proposé la première version du modèle relationnel ci-dessous :
Examens de Fin de Formation Pratique 2009 V1-V2-V3
Travail à faire :
1. Créez la base de données sous SQL SERVER ou ORACLE et saisissez quelques enregistrements pour le test. 2. Créer une interface de mise à jour des tables Client et HOTEL a. Affichage des enregistrements. b. Ajout (le contrôle de saisie est obligatoire avec confirmation d’ajout). c. Modification. d. Suppression. 3. Créer une interface de mise à jour des tables Région et type Séjour. 4. Créer une interface de mise à jour des Réservations (Ajout et suppression), le montant doit être calculé et affiché automatiquement. 5. Ajouter dans la même feuille, une cadre pour effectuer une recherche des Réservations entre deux dates. 6. Ajouter une fonction remise permettant de bénéficier les client d’une remise automatique de 15% durant la période allant du Septembre à fin Novembre de chaque année. 7. Créer un état permettant de lister les réservations enregistrées par mois, le nombre de réservations par mois et le total des réservations annuel. 8. Créer un graphe permettant d’afficher les statistiques des réservations par ans. 9. Créer une page web permettant d’afficher dans tableau, la liste des hôtels triés par région. 10. Ajouter dans la même page, une liste de choix, permettant aux utilisateurs d’afficher les hôtels en fonction de la région choisi depuis la liste. 11. Créer une page web permettant aux utilisateurs de faire une réservation en ligne et calculer le montant total de la réservation: a. Le Code Réservation et Code Client sont générés automatiquement b. Le montant total de la réservation est calculé en fonction du type de séjour et la durée. c. La remise doit être prise en considération d. Une fois le client valide sa réservation, toutes les informations utiles doivent etre affichées (Code réservation, Code Client, Date début, date fin et le montant à payer) 12. Créer une page permettant à un client de modifier sa réservation. Le client doit saisir son code et son numéro de réservation avant d’effectuer les modifications.
Examens de Fin de Formation Pratique 2009 Variante 3
Partie I : Gestion de réservations.
On désire développer une application pour la gestion des réservations des bungalows pour le compte d’un clients dans la ville de Tanger. Les analystes chargés de l’étude technique ont proposé la première version du modèle relationnel ci-dessous :
Examens de Fin de Formation Pratique 2009 V1-V2-V3
Travail à faire : 1. Créez la base de données sous SQL SERVER ou ORACLE et saisissez quelques enregistrements pour le test. 2. Créer une interface de mise à jour des tables Client et BUNGALOW a. Affichage des enregistrements. b. Ajout (le contrôle de saisie est obligatoire avec confirmation d’ajout). c. Modification . d. Suppression . 3. Créer une interface de mise à jour de la table type Séjour (Ajout, Modification et Suppression). 4. Créer une interface de mise à jour des Réservations (Ajout et suppression), le montant doit être calculé et affiché automatiquement. 5. Ajouter dans la même feuille, une cadre pour effectuer une recherche des Réservations entre deux dates. 6. Ajouter une fonction remise permettant de bénéficier les client d’une remise automatique de 10% pour les mois : Septembre, Mars et Avril de chaque année. 7. Créer un état permettant de lister les réservations enregistrées par mois, le nombre de réservations par mois et le total des réservations annuel. 8. Créer un graphe permettant d’afficher les statistiques des réservations par ans. 9. Créer une page web permettant d’afficher dans tableau les Bungalows disponibles. 10. Créer une page permettant aux utilisateurs de faire une réservation en ligne et calculer le montant total de la réservation: a. Le Code Réservation et Code Client sont générés automatiquement b. Le montant total de la réservation est calculé en fonction du type de séjour et la durée. c. La remise doit être prise en considération d. Une fois le client valide sa réservation, toutes les informations utiles doivent etre affichées (Code réservation, Code Client, Date début, date fin et le montant à payer) 11. Créer une page permettant à un client de modifier sa réservation. Le client doit saisir son code et son numéro de réservation avant d’effectuer les modifications. 12. Créer une page permettant à un client de négocier le montant. Le client doit saisir son code et son numéro de réservation avant d’effectuer la négociation. La négociation n’est autorisée que durant la période allant de Octobre à fin Novembre et de Mai à fin Juin. Si un Client veut négocier le montant en dehors de cette période, un message d’avertissement s’affiche.
Télécharger Les Examens de Fin de Formation Pratique 2009 V1-V2-V3 :
Un jeune promoteur désire connaître les productions réalisées sur ses parcelles culturales. Une parcelle peut comporter plusieurs productions dans la même année civile. Pour chaque parcelle, on veut connaître quelles productions ont été réalisées et à quelles dates. On désire également connaître le rendement de chaque production par parcelle, ainsi que les apports en N, P, K pour une période donnée. Enfin, on doit pouvoir disposer de la quantité et du nom de l’engrais qui a été épandu sur chaque parcelle (à une date donnée). Il vous fournit les informations suivantes : - Le nom de la parcelle et sa surface - Les coordonnées géographiques de la parcelle - Le nom de la production et son unité de production - Les dates début et fin de production - La quantité produite - Le nom de l’engrais - L’unité d’épandage de l’engrais - La proportion de N, de P et de K dans l’engrais - La quantité d’engrais épandue à une date donnée sur une parcelle donnée En analysant le cahier des charges, Répondez aux questions suivantes : 1. Rédiger un dictionnaire de données (1 Pt) 2. Donner un modèle conceptuel de données en respectant les règles de gestion (3 Pts) 3. Déduire le modèle logique de données (2 Pts)
II – LOGIQUE & ALGORITHMES
1. Simplifier la fonction suivante : (1 Pt) 2. Soin la fonction : , Trouvez l’équivalent de f, en n'utilisant que les opérateurs + . - (1 Pt) 3. Remplissez le tableau ci-dessous, en calculant l’équivalent selon la base demandée : (1 Pt)
Examen de passage 2009 Théorique
4. Faire les opérations suivantes : (1 Pt)
110011001 1111 - 1101101 x 111 ------------- ------------- 5. Ecrivez un algorithme permettant à l’utilisateur de saisir un nombre quelconque de valeurs, qui devront être stockées dans un tableau. L’utilisateur doit donc commencer par entrer le nombre de valeurs qu’il compte saisir. Il effectuera ensuite cette saisie. Enfin, une fois la saisie terminée, le programme affichera le nombre de valeurs négatives et le nombre de valeurs positives. (1 Pt) 6. A étant un tableau de n réels. On se propose d'écrire une fonction intitulée MaxA renvoyant la valeur maximale dans un tableau A. (1 Pt)
III – PROGRAMATION STRUCTUREE EN C OU C++
1. Ecrire un programme qui affiche un triangle isocèle formé d'étoiles de N lignes (N est fourni au clavier) : (1 Pt) Exemple : Nombre de lignes : 8
Examen de passage 2009 Théorique
2. Ecrire la fonction ADD_MATRICE qui effectue l'addition de deux matrices (1 Pt) 3. Ecrire un programme qui lit une chaîne de caractères et qui convertit toutes les majuscules dans des minuscules et vice-versa. (1 Pt) 4. Ecrire un programme qui lit une chaîne de caractère ne dépassant pas 200 caractères et affiche ensuite, la longueur L de la chaîne et le nombre de 'e' existant. (1 Pt)
IV – PROGRAMATION ORIENTÉE OBJET EN VB.NET, C # OU JAVA
1. Créer une Classe ou une Structure Point ayant les champs x, y et éventuellement des constructeurs et des propriétés. Ajouter une méthode permettant da calculer la distance à l’origine
Examen de passage 2009 Théorique
2. Ajouter une autre méthode permettant d’afficher les coordonnés d’un point donné et la distance à l’origine (1 Pt) 3. Ecrire un programme de test pour créer deux points A(12,10) et B(4, 3), et afficher leurs coordonnés et la distance à l’origine. (0,5 Pt) 4. Affecter les coordonnés de B à A et afficher les nouvelles informations du point A. (0,5 Pt)
Examen de Passage Théorie 2008 - Mathématiques appliquées - Installation d'un poste informatique - Algorithme - Sql
I – Logique & Mathématiques appliquées :
1. Une personne a oublié son code de carte bleue. Sachant que la somme de ces 4 chiffres est de 13, que le chiffre des milliers est 2 fois plus grand que celui des unités et que le chiffre des centaines est 3 fois plus grand que celui des dizaines. Quel est son code ? (1 pt) 2. Un cadeau est constitué d'un emballage et de son contenu, le cadeau vaut 110 dhs. Le contenu vaut 100 dhs de plus que l'emballage. combien vaut le contenu ? et combien vaut l'emballage ? (0,5 pt) 3. Convertir le code binaire 11000001 en décimal et en hexadécimal (0,5 pt) 4. Simplifier l’expression logique suivante : Examen de Passage Théorie 2008 - Mathématiques appliquées - Installation d'un poste informatique - Algorithme - Sql
II – Installation d'un poste informatique :
1) Définir les termes suivants : a) Processeur (0.25 pt) b) BIOS (0.25 pt) c) Chipset (0.25 pt) d) Drivers (0.25 pt) 2) Quel est l’intérêt principal de ne pas donner le droit administrateur à un utilisateur d’un poste de travail? (0.5 pt) 3) A quoi sert la commande CONVERT ? (0.5 pt)
III – Techniques de programmation :
1. Soit x une donnée de type réel (1 Pt)
Examen de Passage Théorie 2008 - Mathématiques appliquées - Installation d'un poste informatique - Algorithme - Sql
Cela est vrai lorsque n tend vers +oo. En informatique, il n'y a pas de notion d'infini. Le terme (x^n/n!) va tendre vers zéro. En informatique, et à partir d'une valeur de n (qui dépend de x), ce terme va être nul. Réaliser une fonction qui fait l’approximation de l'exponentiel. 2. Que produit l’algorithme suivant ? (0,5 Pt) Tableau Suite(7) en Entier Variable i en Entier Début Suite(0) ← 1 Suite(1) ← 1 Pour i ← 2 à 7 Suite(i) ← Suite(i-1) + Suite(i-2) i suivant Pour i ← 0 à 7 Ecrire Suite(i) i suivant Fin 3. Écrivez un algorithme qui calcule le schtroumpf des deux tableaux. Pour calculer le schtroumpf, il faut multiplier chaque élément du tableau 1 par chaque élément du tableau 2, et additionner le tout. (1 Pt) 4. Soit une classe de 20 stagiaires. Chaque stagiaire est représenté par les informations suivantes : Nom chaîne Prénom chaîne Notes Tableau réel Moyenne réel Classement entier Utilisez un tableau pour contenir les données des stagiaires. On veut réaliser les traitements suivants : - Saisir les données nécessaires (0.5 Pt) - Calculer la moyenne pour chaque stagiaire (1 Pt) - Trier les stagiaires par la moyenne et dans le sens décroissant. (1 Pt) - Déterminer le classement pour chaque stagiaire. (1 Pt) - Afficher les données de tous les stagiaires. (1 Pt)
IV Programmation :
1. Écrire un programme, qui affiche en boucle l’invite suivante à l’utilisateur : 1 Somme de deux entiers 2 Soustraction de deux entiers 3 Multiplication de deux entiers 4 Division de deux entiers 5 Sortie du programme Veuillez entrer votre choix : et qui attend un entier (entre 1 et 5) entré par l’utilisateur. Pour un choix entre 1 et 4, le programme demande ensuite a` l’utilisateur d’entrer les deux entiers de l’opération a` effectuer, puis affiche le résultat de l’opération. Si le choix 5 est entré, on sort du programme. (2 Pts) 2. Un étudiant est donné par son nom, son prénom, et sa moyenne aux examens. Définir une classe Etudiant et une classe ListeEtudiants avec pour chacune un constructeur initialisant les champs a` des valeurs données. La liste des étudiants sera stockée dans un tableau, qui sera privé. On prévoira également un champ contenant le nombre d’éléments de ce tableau. (3 Pts)
V- Manipulation des données avec SQL :
Soit le modèle relationnel suivant : MAGASIN (NumeroMagasin, AdresseMagasin, TelephoneResponsableInformatique, NomResponsableInformatique) MATERIEL (NumeroMateriel, DescriptifMateriel, NumeroMagasin#) REPARATION (NumeroReparation, DateDepot, DescriptifReparation, DateFinReparation, CoutReparation, NumeroMateriel#) a. Ecrire la requête permettant de Calculer la durée moyenne des réparations dont le coût est inférieur à 1 000 Dhs. La durée d’une réparation, exprimée en jours, est obtenue en faisant la différence entre la date de fin de réparation et la date de dépôt correspondante. On considérera que CoutReparation est toujours renseigné. (1 Pt) b. Calculer le nombre de réparations par magasin pour le mois de mars 2000. Les réparations à prendre en compte sont celles pour lesquelles le dépôt a été effectué en mars 2000. (1 Pt) c. Ecrire le code SQL permettant de créer la table MATERIEL. Le choix des types de données est laissé à l'appréciation du candidat. (1 Pt)
a - Faire l’algorithme pour calculer K=1* 1/2 * 1/3* ………..*1/n (n>0). (2.5Pts) b – Écrire le programme JAVA permettant de calculer K. N’utilisez pas la classe Clavier. (2.5Pts) 2. Écrire un algorithme qui calcule la racine carrée d'un nombre réel: A à l'aide de la formule itérative suivante:
On arrêtera les calculs lorsqu'on obtient une précision |Xn – Xn-1| ≤ Eps (Eps est donné par l'utilisateur: Eps<<1). (3Pts) 3. On dispose de toute la monnaie nécessaire en billets de 200 Dhs, 100 Dhs, 50 Dhs, 20 Dhs, et en pièces de 10 Dhs, 5 Dhs, 2 Dhs et 1 Dhs. Écrire un programme qui décompose une somme d'argent saisie au Clavier en billets et pièces (en utilisant le plus petit nombre de billets et de pièces possible) et affiche la décomposition. (3Pts)
Exemple : Une somme d'argent saisie : 38 Dhs sera décomposée comme suit :Un billet de 20 Dhs, Une pièce de 10 Dhs, Une pièce de 5 Dhs, Une pièce de 2 Dhs et Une pièce de 1 Dhs.
Dossier 2 : UML (11 points)
Il s'agit de réaliser un logiciel d'aide à la gestion d'un entrepôt de stockage de différent produits chimiques. Ce logiciel a pour but d'améliorer la répartition des produits et d'assurer la sécurité du dépôt en évitant par exemple, le stockage de certains produits dans le même local ou dans des locaux voisins. A cette fin, le responsable de l'entrepôt doit pouvoir effectuer des vérifications, à tout moment, en demandant au système un rapport complet sur l'état des stocks. Cet entrepôt dispose d'un quai de déchargement et de chargement. Il est organisé en locaux adaptés aux différents types de produits (toxicité, température de stockage, réaction chimique, …). Chaque local comprend un certain nombre de casiers numérotés. Chaque jour, deux employés sont chargés de réceptionner les arrivées qui doivent correspondre aux commandes de l'entreprise. Celles-ci sont communiquées par le système central à celui de l'entrepôt, chaque matin, à la demande du responsable. Un employé, quand il réceptionne un chargement, fournit au système les caractéristiques de ce chargement ainsi que celles de chacun des lots de produits qui le constitue. Pour chacun des lots, le système détermine le casier où ranger ce lot et fournit au code barre et une fiche d'allocation qui seront collés par l'employé sur le lot. Une fois un chargement réceptionné, les produits sont acheminés dans les locaux et rangés dans les casiers par les manutentionnaires suivant le plan d'allocation établi par le système. Les erreurs de livraison seront signalées. Lorsqu'un chargement arrive, l'employé crée à l'écran un nouveau bordereau de réception indiquant la date et l'heure de livraison, le numéro de la commande correspondante, l'origine du chargement et le nom du chauffeur. Il vérifie chaque lot constitué d'une certaine quantité d'un produit donné. Il rentre sur le bordereau le code du produit et la quantité livrée. En fonction du code et de la quantité, le système détermine le local et le casier de stockage (on supposera que l'entrepôt dispose toujours d'assez de locaux de stockage). Le système attribut alors au lot un identifiant et délivre un code barre et une fiche de destination qui seront collés sur l'emballage. Lorsque tous les lots seront rentrés, le système compare le bordereau avec la commande correspondante. S'il trouve des différences, il produit un rapport d'erreur de livraison, sinon, la commande est validée et un accusé de réception est délivré au chauffeur.
1) Faire le diagramme de USE CASE ( 2Pts) 2) Etablir le diagramme collaboration pour les commandes du jour (2.5Pts) 3) Faire un diagramme de séquence pour les différents scénarios pour Réception des arrivées (2.5Pts) 4) Faire le diagramme de classe ( 4pts)
Dossier 3 : Merise (7 points)
La société DOMELEC est spécialisée dans la fabrication et la commercialisation d’appareils électroménagers à usage domestique. Son siège social est situé dans une ville du Sud de la France, qui est le berceau de l’entreprise. Aujourd’hui DOMELEC compte plusieurs sites, aussi appelés « unités de production », répartis sur le territoire métropolitain. L’entreprise mène une politique de recherche de la qualité totale qui s’articule autour de plusieurs axes : • implication des salariés, • contrôle de la qualité des produits fabriqués, • intégration des fournisseurs dans le processus de fabrication, • politique d’innovation, • certification de la démarche qualité.
DOSSIER 1 : SUIVI DE LA COMPÉTENCE DES OPÉRATEURS
La fabrication des produits distribués par l’entreprise est organisée autour de postes de travail.
> Les unités de production Il existe plusieurs unités de production au sein de la société. Chaque unité de production est identifiée par un code et possède un nom en rapport avec sa localisation (exemple : l’unité « Bourgogne »). Une unité de production prend en charge au moins une ligne de produits. Chaque unité de production héberge plusieurs équipes de production.
> Produits et lignes de produits Une ligne de produits est une famille de produits qui possèdent la même fonction générale. La fabrication d’une ligne de produits est confiée à l’une des unités de production. Chaque produit n’appartient qu’à une seule ligne de produits.
L’identifiant d’un produit est composé de l’identifiant de la ligne de produits à laquelle il appartient et d’un numéro séquentiel. Pour chaque produit, il est important de mémoriser un nom explicite, sa date de première mise en fabrication et un descriptif détaillé.
> L’équipe de production, le superviseur et les opérateurs Une équipe de production est composée exclusivement de salariés de l’entreprise. Une équipe travaille sur une seule ligne de produits. Chaque équipe est identifiée par un numéro d’équipe. Elle est encadrée par un chef d’équipe appelé superviseur. La date de prise en charge de l’équipe par son superviseur doit être mémorisée. Les autres membres de l’équipe sont qualifiés d’opérateurs. Pour chaque salarié, il est souhaitable de mémoriser les informations suivantes : matricule, nom, prénom, âge, adresse et numéro de téléphone. Pour un opérateur, il faut connaître la date d’affectation à son poste de travail actuel, sa formation d’origine, décrite sous la forme d’un commentaire, ainsi que le plus haut diplôme obtenu par l’opérateur, s’il en possède un. Le superviseur peut diriger plusieurs équipes au sein de la même unité de production. Pour un superviseur, les informations à prendre en compte sont: la date de première affectation en qualité de chef d’équipe dans l’entreprise et son origine (recrutement externe ou promotion interne). Un opérateur fait partie d’une seule équipe. Il est affecté à un seul poste de travail. On ne s’intéresse pas aux précédentes affectations de cet opérateur (équipe ou poste de travail).
> Postes de travail Le même poste de travail peut être mobilisé pour fabriquer différents produits d’une même ligne de produits car, en général, les techniques de fabrication des produits d’une ligne sont semblables. La fabrication d’un produit requiert plusieurs postes de travail. Chaque poste de travail est défini par un numéro, un nom et un libellé explicatif. On souhaite également connaître la date d’installation du poste, la date de sa dernière vérification et l’intervalle de temps maximal entre deux vérifications.
> Compétences et habilitations La maîtrise de l’utilisation d’un poste de travail par un opérateur peut être décomposée en compétences élémentaires. Une compétence est un savoir-faire élémentaire sur un poste de travail. Elle peut être commune à plusieurs postes. Chaque compétence possède un code et un libellé. Une habilitation est un ensemble de compétences liées à un poste de travail. Pour chaque poste, il existe quatre niveaux hiérarchisés d’habilitation qui correspondent à des degrés de maîtrise de ce poste. Chaque habilitation est identifiée par le poste qu’elle concerne et son niveau (de 1 à 4). Un libellé décrit chaque habilitation.
Exemple : Poste numéro 354 : Installation système refroidissement et protection isotherme
Questions : a. Présenter le schéma conceptuel de données correspondant au domaine décrit. (5Pts) b. Etablir le MLDR (2Pts)
Dossier 4 : SQL (6 points)
Le schéma relationnel de la base de données est le suivant : VOL (NUMVOL, ville_depart, ville_arrivee, heure_depart, heur_arrivee, distance, frequence) AVION (NUMAV, TYPE, CAPACITE) DEPART (NUMDEP, DTE, NUMVOL, NUMAV, QTECARBU) PASSAGER (NUMPASS, NOM, ADREESE, TEL) PERSONNEL (NUMPERS, NOM, ADRESSE, TEL) PILOTE (NUMPERS) RESERVATION (NUMDEP, NUMPASS) AFFECTATION (NUMDEP, NUMPERS)
1. Créer la table DEPART en ajoutant les contraintes clé primaire et clés étrangères (1Pt) 2. Donner la liste des avions dont la capacité est supérieure à 375 passagers (0.5Pt) 3. La liste des vols au départ de casa allant à paris après 18 heures(0.5Pt) 4. Ajouter la colonne NHV(nombre d’heures de vol) dans la table Pilote (0.5Pt) 5. Supprimer les passagers ayant réservés dans le vol Numéro 450 (0.5Pt) 6. La liste des passagers ayant pris le même vol que « Chadli » (1Pt) 7. Afficher la consommation moyenne en carburant par Km (1Pt) 8. Afficher les départs et le nombre de place libre est inférieur à la moitié de la capacité de l’avion (1Pt)
Dossier 5 : Réseaux Informatiques (5 points) Soit le schéma suivant d'un réseau où A, B, C, D, E et F sont des machines reliées par cetype de réseau:
2 . Est-il possible de faire communiquer tous les hôtes de ce segment ? a- En gardant les mêmes masques ? (Expliquez) (1Pt) b- En gardant les mêmes adresses ? (Expliquez) (1Pt)
a. Une citation est fausse : (1pt) · Un algorithme est une suite d’étapes ordonnées. · Un algorithme est une solution d’un problème donnée. · Un algorithme doit être écrit sous langage de programmation b. Une fonction : (1pt) · Retourne une seule valeur. · Ne retourne aucune valeur. · Retourne plusieurs valeurs de même type. · Retourne plusieurs valeurs de types différents. c. Présenter adéquatement la structure des supports physiques du câblage suivant : · Le câble coaxial (0.5pt) · La paire torsadée (0.5pt) · La fibre optique (0.5pt) d. Quelles sont les caractéristiques d’un réseau local (1pt) e. Donner la différence entre les composantesréseaux suivantes : Répéteurs, Routeur, Firewall (1.5pt) / (0.5pt par question) f. Quel est l’intérêt d’un sous adressage ? (0.5pt) g. On veut créer 6 sous réseaux pour une organisation qui dispose d’une adresse NIC Internet 130.001.000.000. a) À quelle classe appartient cette adresse ? (0.5pt) b) Donnez le sous adressage ainsi que le masque pour chaque sous réseau (1pt). c) Donnez la plage d’adressage des postes pour chaque sous réseau (1pt)
Dossier 1 : Merise (9pts)
Pour les besoins de la gestion d'un aéroport on souhaite mémoriser dans une base de données les informations nécessaires à la description des faits suivants: · chaque avion géré est identifié par un numéro d'immatriculation. Il est la propriété soit d'une société, soit d'un particulier: dans les deux cas on doit connaître le nom, l'adresse et le numéro de téléphone du propriétaire, ainsi que la date d'achat de l'avion; · chaque avion est d'un certain type, celui-ci étant caractérisé par son nom, le nom du constructeur, la puissance du moteur, la capacité en nombre de places; · la maintenance des avions est assurée par les mécaniciens de l'aéroport. Par sécurité, les interventions sont toujours effectuées par deux mécaniciens (l'un répare, l'autre vérifie). Pour toute intervention effectuée, on conserve le numéro de l’intervention, l'objet de l'intervention, la date et la durée; · pour chaque mécanicien on connaît son nom, son adresse, son numéro de téléphone et les types d'avion sur lesquels il est habilité à intervenir; · un certain nombre de pilotes sont enregistrés auprès de l'aéroport. Pour chacun d’eux on connaît son nom, son adresse, son numéro de téléphone, son numéro de brevet de pilote et les types d'avion qu'il est habilité à piloter avec le nombre total de vols qu'il a effectué sur chacun de ces types. Travail à faire : 1. Etablir le dictionnaire de données (1.5pt) 2. Donner le Modèle Conceptuel des Données (5pts) 3. Traduire le MCD trouvé en Modèle relationnel des données (2.5pts)
Dossier 3 : UML (13pts)
L’université ESU désire automatiser son système d’inscription. Le chef du service des inscriptions établit le programme des cours pour un semestre. Un cours peut être offert plusieurs fois. Les étudiants doivent sélectionner 4 cours primaires et 2 cours secondaires. Dès qu’un étudiant s’est inscrit pour un semestre, le système de facturation est notifié. Les étudiants peuvent utiliser le système pour modifier leurs choix pendant une certaine période de temps après leur inscription. Les enseignants utilisent le système pour consulter leur emploi du temps ( tableau d’activités en fonction des cours qui tournent). Les utilisateurs du système d’inscription reçoivent des mots de passe qui sont nécessaire à la procédure d’identification.
Travail à faire : 1 - Définir les acteurs et Identifier leurs besoins. (1 pt ) 2 - Donner le diagramme des cas d'utilisation de ce système. (2pts) 3 - Etablir les relations entre les différents cas d’utilisation. (1 pt ) 4 - Décrire par un diagramme de séquencele besoin de l’étudiant. (2pts) 5 - Décrire par un diagramme de collaboration le besoin du chef de service des inscriptions. (2pts) 6- Donner le diagramme de classe d’analyse. (3pts) 7 - Décrire par un diagramme d’état le comportement de l’objet Cours dans ce système. (2pts)
Dossier 4 : SQL (5pts)
Pour gérer des rencontres des tournois de tennis d’une saison donnée, on dispose de la base de données suivantes : JOUEUR (NoJoueur, NomJ, NoEq#, CodePays#) EQUIPE (NoEq, NomE) TOURNOI (NoTour, NomT, Date, Coef, Dotation, CodePays#) PAYS (CodePays, NomP, Monnaie) JOUE_J (NoJoueur#, NoTour#, Score_J) JOUE_E (NoEq#, NoTour#, Score_E)
NB : Un joueur peut jouer individuellement ou en équipe.
Travail à faire : 1) Ecrire une requête qui permet d’afficher la liste de tous les joueurs.(1pt) 2) Ecrire une requête qui permet d’afficher la liste de tournois qui vont se dérouler entre la date du 01/06/2006 et 31/07/2006. (1pts) 3) Ecrire une requête qui permet de renvoyer le nombre des équipes qui ont participé au tournoi numéro 6. (1pts) 4) Ecrire une requête qui permet de donner les noms des tournois qui se sont déroulés au Maroc. (1pts) 5) Écrire une requête qui permet d’afficher les noms des joueurs qui ont participé individuellement aux différents tournois du Maroc. (1pts)
Dossier 5 : Algorithme (4pts)
Ecrire un Algorithme qui demande à l’utilisateur de saisir sa Date de Naissance (jour, mois et année); puis l’Algorithme affiche le jour de sa naissance.
Remarque : - Le nombre de jours des mois de l’année (avec simplification) sont indiqués dans le tableau suivant:
Exercice 1 : 6 Pts Soit le tableau "JoursSemaine" qu'on peut remplir avec les noms des jours de la semaine (Dimanche, Lundi, Mardi,...) 1. Ecrire la procédure qui permet de remplir le tableau (1.5 Pts) 2. Ecrire une procédure qui trie les éléments du tableau dans 1'ordre alphabétique (1.5 Pts) 3. Ecrire une procédure qui efface les éléments du tableau à partir du 3eme élément (1.5 Pts) 4. Ecrire une fonction qui reçoit en paramètre le nom du jour puis renvoie son indice (1.5 Pts)
Exercice 2 : 4 Pts Soit la chaîne de caractères suivantes : «module03 codification d’un algorithme et programmation procédurale » 1. Ecrire une procédure qui permet de calculer le nombre de voyelles. (1.5 Pts) 2. Ecrire une procédure qui permet de calculer le nombre d’espaces. (1.5 Pts) 3. Ecrire une procédure qui permet de rechercher et remplacer le mot « procédurale » par « événementielle ». (1 Pts)
Exercice 3 : 10 Pts On veut créer une petite application de gestion de prêts des ouvrages auprès d’une bibliothèque par les étudiants. Les données sont stockées de la façon suivante :
Utiliser la structure qui vous convient pour stocker les données dans le tableau 1) Ecrire une procédure de saisie des données./1pts Prévoir les contraintes suivantes: Le maximal de nombre d’ouvrage à emprunter ne doit pas dépasser 3. La durée de prêt est déterminée de telle façon que pour chaque ouvrage deux jours de prêt sont accordés. 2) Ecrire une fonction qui retourne le nombre des ouvrages pour chaque étudiant et la stocker dans l’enregistrement. /1pts 3) Ecrire une procédure pour calculer le total des ouvrages en prêt pour la bibliothèque. /1pts 4) Ecrire une fonction qui permet de chercher un étudiant par son numéro et retourne son indice sinon -1. /1pts 5) Ecrire une procédure d’affichage d’un enregistrement en passant son indice en paramètre. Utiliser la fonction en question 4) /1pts 6) Ecrire une procédure qui permet d’afficher un enregistrement in indiquant le numéro d’un étudiant./1pts. Utiliser les questions 4) et 5). 7) Afficher les étudiants ayant empruntés les modules. /1pts 8) Afficher les étudiants n’ayant pas d’ouvrages. /1pts 9) Afficher les étudiants ayant entre 2 et 4 ouvrages. /1pts 10)Afficher le numéro, le nom et le nombre d’ouvrages de tous les étudiants. /1pts
Examen Fin Module 2 ( algorithme ) :
Exercice 1 : (5 points) Soit le texte stocké dans un tableau de caractères de taille max=1000. Le caractère $ indique la fin du texte. On définit un mot comme étant une séquence de caractères précédée obligatoirement d'un bloc, qui ne contient pas le caractère espace ni de caractère de ponctuation. La fin du mot est indiquée soit par le caractère espace soit par l'un des caractères de ponctuation. Les caractères de ponctuation sont: . , ; Chercher le mot "programme" dans le texte déjà saisi dans le tableau (T) et afficher le nombre de fois où il apparaît dans le texte.
Exercice 2 : (7 points) Les points cols d'un tableau à deux dimensions sont les éléments du tableau qui sont maximum sur leur ligne et minimum sur leur colonne; ou minimum sur leur ligne et maximum sur leur colonne. Ecrire la procédure qui: 1. Reçoit une ligne et retourne la valeur du maximum et la case où elle existe. 2. Reçoit le numéro de colonne du maximum retrouvé, et retourne un booléen "vrai" dans le cas où il est minimum sur sa colonne et "faux" dans le cas contraire. 3. Reçoit une ligne et retourne la valeur du minimum et la case où elle existe. 4. Reçoit le nombre de colonne du minimum retrouvé, et retourne un booléen "vrai" dans le cas où il est maximum sur sa colonne et "faux" dans le cas contraire. 5. Ecrire le programme principal qui recherche dans un tableau à deux dimensions les points cols en utilisant les procédures précédentes.
Exercice 3 : (8 points) Chaque élève d'une classe s'est vu attribuer dix notes correspondant à dix matières (une note fictive égale à -1 correspond à une absence lors de l'épreuve de contrôle). A chacune de ces matières correspond un coefficient. On suppose que le nombre d'élèves ne dépasse pas 50. - Pour tous les calculs de moyenne, on ne tient pas compte des absences. - On ne calcule la moyenne effective d'un élève que s'il a été présent au moins à un contrôle. - On note par -1 la moyenne d'un élève absent à tous les contrôles. Nous allons utiliser un tableau NOTE de 50 lignes et 50 colonnes. Chaque ligne correspond à un élève, et chaque colonne à une matière. Le tableau MOY de 50 lignes permet de stocker la moyenne de chaque élève. On utilise un tableau COEF de 10 lignes, dans lequel on stocke le coefficient de chaque matière. L'ordre dans COEF correspond à l'ordre des colonnes de NOTE: par exemple si la première colonne de NOTE correspond aux notes de mathématique, on doit trouver en COEF(1) le coefficient mathématique. Ecrire un algorithme qui permettrait de calculer: 1. La moyenne de chaque élève. 2. La moyenne générale de la classe. 3. Pour chaque matière, la moyenne de la classe et le pourcentage d'absentéisme.
Examen Fin Module 3 ( algorithme ) :
Exercice 1 : (2 points) Traduire par un algorithme le texte suivant : « Dans un magasin, les personnes mariées bénéficient de 5 % de réduction sur certains articles, alors que les étudiants bénéficient de 10% »
Exercice 2 : (6 points) Soit un tableau T de 10 entiers. 1- Ecrire l’algorithme qui permet de remplir les k premières cases du tableau (k <= 10) 2- Ecrire l’algorithme qui permet d’insérer un zéro à la première case du tableau après avoir décalé les éléments du tableau T d'une case. 3- Ecrire l’algorithme qui permet d’insérer p (p >= 1) zéros en tête du tableau T.
Exercice 3 : (12 points) Une société commercialise 50 produits dans 3 magasins différents. On désire faire les statistiques de ventes annuelles. Pour cela, on utilise trois tableaux : V1(i), V2(i) et V3(i) représentant respectivement la quantité vendue dans l’année du i ieme produit dans les magasins 1, 2 et 3. L’étude consiste à établir les algorithmes suivants : 1) Procédure de saisie au clavier de toutes les données (remplissage des tableaux de quantités vendues V1, V2 et V3. 2) Procédure de calcul de la quantité totale vendue tout produit, tout magasin réunis. 3) Procédure de calcul de la quantité totale vendue par produit, tout magasin réunis. Stocker ces résultats dans un tableau M. 4) Procédure de calcul de la quantité totale vendue par magasin, tout produit réunis. Stocker ces résultats dans un tableau P. 5) Procédure de calcul pour chaque produit la moyenne vendue. Stocker ces résultats dans un tableau Y. 6) Procédure d’édition des résultats suivants, pour chaque produit : Numéro produit, quantité totale vendue et moyenne vendue. 7) Procédure d’archivage des résultats dans un fichier « PRODUITS » et qui va contenir pour tous les produits : les numéros, les quantités totales vendues.