Examens de Passage - 2010 - Pratique - Variante 9
PARTIE I : PROGRAMMATION STRUCTUREE EN C OU C++
1. Écrire un programme de recherche de la valeur maximale d'une matrice de réels de taille n x m. (1 Pt)
2. Faire un programme pour le calcul et l’affichage suivant : (2 Pts)
3. Un nombre parfait est un entier positif supérieur a 1, égal à la somme de ses diviseurs
NB : on compte 1 comme diviseur, mais on ne compte pas comme diviseur le nombre lui-même.
Exemple :
6 est un nombre parfait puisque : 6 = 3 + 2 + 1.
1. Ecrire une fonction qui prend pour argument un nombre entier n et retourne Vrai si n est parfait ou Faux sinon. (1 Pt)
2. Ecrire un programme permettant de lister les 500 premiers nombres parfaits (1 Pt)
2. Faire un programme pour le calcul et l’affichage suivant : (2 Pts)
3. Un nombre parfait est un entier positif supérieur a 1, égal à la somme de ses diviseurs
NB : on compte 1 comme diviseur, mais on ne compte pas comme diviseur le nombre lui-même.
Exemple :
6 est un nombre parfait puisque : 6 = 3 + 2 + 1.
1. Ecrire une fonction qui prend pour argument un nombre entier n et retourne Vrai si n est parfait ou Faux sinon. (1 Pt)
2. Ecrire un programme permettant de lister les 500 premiers nombres parfaits (1 Pt)
PARTIE II : LOGICIELS D’APPLICATION
Soit le modèle relationnel suivant :
MEDECIN (Matricule, nom)
PATIENT (NumPat, Nom)
MEDICAMENTS (Code, Libelle, prix)
CONSULTATION (NumConsult, date, prix, Matricule, N°_SS)
PRESCRIT (Code, NumPat)
(Pour simplifier l’analyse la base suppose qu’un patient peut voir un médecin une seule fois pour une date donnée.)
1. Créez la base de données sous MS Access (1 Pt)
- Définir la clé primaire pour chaque table
- Définir les clés étrangères
- Définir les relations entre les tables
- Saisir un jeu d’enregistrements significatif pour chaque table.
2. Créer les requêtes suivantes : (1 Pt)
- Afficher la liste des médecins dont la première lettre est saisie au clavier
- Déterminer le nombre de consultations pour chaque patient
- Afficher les caractéristiques de toutes les consultations effectuées entre deux dates saisies au clavier (les champs à afficher sont : N°consultation, date, prix, nom du patient et le nom du médecin
- Afficher le nombre de consultations effectuées par chaque médecin et trier le résultat par ordre décroissant.
3. Créer un formulaire pour mettre à jour la table CONSULTATION (1 Pt)
MEDECIN (Matricule, nom)
PATIENT (NumPat, Nom)
MEDICAMENTS (Code, Libelle, prix)
CONSULTATION (NumConsult, date, prix, Matricule, N°_SS)
PRESCRIT (Code, NumPat)
(Pour simplifier l’analyse la base suppose qu’un patient peut voir un médecin une seule fois pour une date donnée.)
1. Créez la base de données sous MS Access (1 Pt)
- Définir la clé primaire pour chaque table
- Définir les clés étrangères
- Définir les relations entre les tables
- Saisir un jeu d’enregistrements significatif pour chaque table.
2. Créer les requêtes suivantes : (1 Pt)
- Afficher la liste des médecins dont la première lettre est saisie au clavier
- Déterminer le nombre de consultations pour chaque patient
- Afficher les caractéristiques de toutes les consultations effectuées entre deux dates saisies au clavier (les champs à afficher sont : N°consultation, date, prix, nom du patient et le nom du médecin
- Afficher le nombre de consultations effectuées par chaque médecin et trier le résultat par ordre décroissant.
3. Créer un formulaire pour mettre à jour la table CONSULTATION (1 Pt)
PARTIE III : PROGRAMMATION ORIENTEE OBJET EN VB.NET, C# OU JAVA
Une école privée souhaite mettre en place un système de gestion de parrainage des élèves.
Soit la class Professeur qui comporte les attributs suivants :
codeIdentifiant int
nom String
prenom String
sexe char (‘M’,’F’)
age int
affectation String
1) Codage de la class Professeur : (1.5 Pts)
- Ecrire la class Professeur.
- Ajouter un compteur qui permet de compter le nombre des objets créés de la class Professeur.
- Ajouter un constructeur sans argument qui initialise l’attribut codeIdentifiant de la class Professeur ; le code doit avoir la valeur du compteur.
- Ajouter un constructeur qui initialise tous les attributs de la classe Professeur.
- Ajouter une méthode afficher () qui afficher toutes les informations d’un Professeur.
2) Créer une exception nommée erreurAge qui se déclenche lors de la saisie d’un âge négatif d’un Professeur. (0.5 Pt)
Soit la classe Elève qui modélise un Elève et qui comporte les attributs suivants :
codeEleve int
nom String
prenom String
niveau int
3) Codage de la class Elève: (1 Pt)
- Ecrire la class Elève
- Ajouter un compteur qui permet de compter le nombre des objets créés de la class Elève.
- Ajouter un constructeur sans argument qui initialise l’attribut codeEleve de la classe Elève; le code doit avoir la valeur du compteur.
- Ajouter un constructeur qui initialise tous les attributs de la classe Elève.
Soit la classe Parrain qui reprend tous les attributs de la classe Professeur et qui y ajoute une collection d’objets Eleve (liste des Elèves parrainés par le Professeur identifiés par leurs codeEleve).
4) Codage de la class Parrain : (1 Pt)
- Ecrire la classe Parrain.
- Ajouter une méthode afficher() qui affiche toutes les informations sur un parrain.
5) Ajouter une méthode ajouterEleve() qui ajoute un Elève à la collection des Elèves parrainés par un Professeur. (1 Pt)
6) Ajouter une méthode supprimerEleve() qui supprime un Elève de la collection des Elèves parrainés par un Professeur. (1 Pt)
Soit la class Professeur qui comporte les attributs suivants :
codeIdentifiant int
nom String
prenom String
sexe char (‘M’,’F’)
age int
affectation String
1) Codage de la class Professeur : (1.5 Pts)
- Ecrire la class Professeur.
- Ajouter un compteur qui permet de compter le nombre des objets créés de la class Professeur.
- Ajouter un constructeur sans argument qui initialise l’attribut codeIdentifiant de la class Professeur ; le code doit avoir la valeur du compteur.
- Ajouter un constructeur qui initialise tous les attributs de la classe Professeur.
- Ajouter une méthode afficher () qui afficher toutes les informations d’un Professeur.
2) Créer une exception nommée erreurAge qui se déclenche lors de la saisie d’un âge négatif d’un Professeur. (0.5 Pt)
Soit la classe Elève qui modélise un Elève et qui comporte les attributs suivants :
codeEleve int
nom String
prenom String
niveau int
3) Codage de la class Elève: (1 Pt)
- Ecrire la class Elève
- Ajouter un compteur qui permet de compter le nombre des objets créés de la class Elève.
- Ajouter un constructeur sans argument qui initialise l’attribut codeEleve de la classe Elève; le code doit avoir la valeur du compteur.
- Ajouter un constructeur qui initialise tous les attributs de la classe Elève.
Soit la classe Parrain qui reprend tous les attributs de la classe Professeur et qui y ajoute une collection d’objets Eleve (liste des Elèves parrainés par le Professeur identifiés par leurs codeEleve).
4) Codage de la class Parrain : (1 Pt)
- Ecrire la classe Parrain.
- Ajouter une méthode afficher() qui affiche toutes les informations sur un parrain.
5) Ajouter une méthode ajouterEleve() qui ajoute un Elève à la collection des Elèves parrainés par un Professeur. (1 Pt)
6) Ajouter une méthode supprimerEleve() qui supprime un Elève de la collection des Elèves parrainés par un Professeur. (1 Pt)
PARTIE IV : 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 parrainage des Elèves.
1) Créer un formulaire permettant de mettre à jour les informations relatives à un Professeur (1 Pt)
2) Créer un formulaire permettant de mettre à jour les informations relatives à un Elève (1 Pt)
3) Créer un formulaire qui permet :
a. Ajouter un Elève à la collection des Elèves parrainés par un Professeur. (0.5 Pt)
b. Supprimer un Elève de la collection des Elèves parrainés par un Professeur. (0.5 Pt)
c. Afficher la collection des Elèves parrainés par un Professeur donné. (0.5 Pt)
d. Afficher le nombre d’élèves parrainés par un Professeur donné. (0.5 Pt)
4) Nous souhaitons enregistrer l’ensemble des Elèves parrainés par un Professeur dans un ficher texte. Ecrire le programme permettant de réaliser cette fonctionnalité. (1 Pt)
5) Proposer une animation de démarrage de votre application avec votre nom de famille (0.5 Pt)
6) Protéger l’accès à cette application par : (0.5 Pt)
Nom d’utilisateur : ADMIN
Mot de passe : t-d-info
1) Créer un formulaire permettant de mettre à jour les informations relatives à un Professeur (1 Pt)
2) Créer un formulaire permettant de mettre à jour les informations relatives à un Elève (1 Pt)
3) Créer un formulaire qui permet :
a. Ajouter un Elève à la collection des Elèves parrainés par un Professeur. (0.5 Pt)
b. Supprimer un Elève de la collection des Elèves parrainés par un Professeur. (0.5 Pt)
c. Afficher la collection des Elèves parrainés par un Professeur donné. (0.5 Pt)
d. Afficher le nombre d’élèves parrainés par un Professeur donné. (0.5 Pt)
4) Nous souhaitons enregistrer l’ensemble des Elèves parrainés par un Professeur dans un ficher texte. Ecrire le programme permettant de réaliser cette fonctionnalité. (1 Pt)
5) Proposer une animation de démarrage de votre application avec votre nom de famille (0.5 Pt)
6) Protéger l’accès à cette application par : (0.5 Pt)
Nom d’utilisateur : ADMIN
Mot de passe : t-d-info