24 juin 2011

Examens de Passage Pratique TDI 2011 Variante 9

Examens de Passage Pratique TDI 2011 Variante 9


Partie 1 : Programmation structurée

Exercice 1 : (5 pts)
Soit la suite numérique définie par            

EP - Examens de Passage Pratique TDI 2011 V7-V8-  V9
EP - Examens de Passage Pratique TDI 2011 V9

Ecrire un programme qui calcule la valeur numérique du polynôme de degré n :



EP - Examens de Passage Pratique TDI 2011 V7-V8-  V9
EP - Examens de Passage Pratique TDI 2011 V9


Pour un couple (x , n) donné par l’utilisateur.

Exercice 2 : (4 pts)
Un nombre parfait est un nombre entier naturel qui est égal à la somme de ses diviseurs stricts ; c à d, ses diviseurs entiers positifs, autres que lui même.
Le premier nombre parfait est 6, puisque la somme de ses diviseurs stricts 1, 2 et 3 est égale à 6 (1 + 2 + 3 = 6).
Ecrire un programme qui cherche tous les nombres parfaits inférieurs à une limite donnée par l’utilisateur.

Exercice 3 : (6 pts)
Ecrire un programme qui permet de trouver les couples de nombres amis inférieurs à une limite, donné par l’utilisateur.
Deux nombres sont dits « amis » si la somme des diviseurs stricts de l'un est égale à l'autre et inversement.
C’est le cas, par exemple, de 220 et 284, puisque :
220 a pour diviseurs : 1, 2, 4,5, 10, 11, 20, 22, 44, 55, 110 (somme=284) ;
et 284 a pour diviseurs : 1, 2, 4, 71 et 142 (somme=220).

Partie 2 : Programmation orientée objet

L’objectif de cette application est de gérer l'inventaire par un suivi des flux d'équipements (création, modification, sortie) et gérer les équipements durant toute leur durée de vie en terme de planifications d'entretien et de remplacement (maintenance) et disponibilité d'équipement (prêt, utilisation multiple, etc.).
1. Créer une classe abstraite Equipement caractérisée par son code, date d’acquisition, Etat (opérationnel ou non), prix d’achat et durée de garantie. Ajouter un constructeur à 2 paramètres : code et Etat et des accesseurs pour tous les champs. Ajouter une méthode toString() qui renvoie les informations sur l’équipement sous forme d’une chaine de caractère. (2 pts)
2. Crée une classe Ordinateur qui hérite de la classe Equipement, elle aura comme caractéristiques supplémentaires : une marque et taille de l’écran. Ecrire le constructeur correspondant ainsi que sa méthode toString() qui renvoie les informations sur l’équipement sous forme d’une chaine de caractères. (2 pts)
3. Crée une classe Téléphone qui hérite de la classe Equipement, elle n’aura aucune caractéristique supplémentaire. Ecrire le constructeur correspondant ainsi que sa méthode toString() qui renvoie les informations sur l’équipement sous forme d’une chaine de caractères. (2 pts)
4. Crée une classe Imprimante qui hérite de la classe Equipement, elle aura comme caractéristiques supplémentaires une marque et un numéro de série. Ecrire le constructeur correspondant ainsi que sa méthode toString() qui renvoie les informations sur l’équipement sous forme d’une chaine de caractères. (2 pts)
Une administration se compose de plusieurs sites, une fiche d'inventaire est établie pour chaque site, un site est caractérisé par un code, description, et une liste des équipements.
5. Classe Site (6pts)
     a. Créer une classe Site, écrire le constructeur correspondant ainsi que sa méthode toString() qui renvoie le code et le description de site ainsi que le nombre d’équipements sans forme d’une chaine de caractères. (1 pt)
     b. Ajouter une méthode AjouterEquipenent qui permet d’ajouter un équipement (ordinateur, Téléphone ou Imprimante)  à la liste de ce site. (1 pt)
     c. Ajouter une méthode RechercheEquipement qui permet de rechercher les équipements achetés à une date passée comme paramètre. (2 pts)
     d. Ajouter une méthode FicheInventaire qui affiche la liste des équipements de ce site. (1 pt)
     e. Ajouter une méthode SupprimerEquipement qui permet de supprimer un équipement  par code. (1 pts)
6. Classe Administration (11 pts)
     a. Créer une classe Administration qui se caractérise par un nom, adresse, téléphone et une liste des sites. Ecrire le constructeur correspondant ainsi que sa méthode toString() qui renvoie le nom de l’administration  ainsi que le nombre des sites sous forme d’une chaine de caractères. (2 pts)
     b. Ajouter une méthode AjouterSite  qui permet d’ajouter un site. (2 pts)
     c. Ajouter une méthode RechercheEquipement qui permet de rechercher les équipements qui ont plus de 5 ans. (1 pt)
     d. Ajouter une méthode EquipementNonOpérationnel qui recherche et affiche les codes Site et les codes d’équipements non opérationnels et qui sont encore sous garantie. (1,5 pts)
     e. Créer une classe d’exception EquipementException. (1,5 pts)
     f. Ajouter une méthode SupprimerSite qui permet de supprimer un site par code et de lever l’exception définie dans la question e) s’il existe déjà un équipement dans  la liste d’équipement de ce site (la liste des équipements doit être vide avant de supprimer un site). (1,5 pts)
     g.  Ajouter une méthode Exporter qui permet de sauvegarder les données de l’application dans un fichier. (1,5 pts)

Partie 3 : Programmation événementielle

Soit à développer une application de gestion de stock. Le stock est composé de plusieurs articles. Un article est caractérisé par :
     • numéro de type entier,
     • son nom de type chaine de caractère,
     • sa famille de type chaine de caractère,
     • son prix d’achat de type réel,
     • son prix de vente de type réel,
     • et sa quantité dans le stock de type entier.
1- Créer la classe Article avec ses attributs et constructeurs nécessaires. (2 pts)
2- Ajouter dans le projet une collection d’objets Article afin de gérer les articles. (2 pts)
3- Créer une interface avec des boutons de navigation (Premier      • Précédent      • Suivant      • Dernier) qui permettent de consulter les informations des articles qui existent. (4 pts)
4- Ajouter à cette interface un bouton Nouveau qui permet de vider des champs pour entrer les informations d’un nouvel article et un bouton  Ajouter qui permet d’ajouter cet article dans la collection. Si l’utilisateur saisie un prix de vente qui est inferieur au prix d’achat, l’article ne doit pas être ajouté et on doit lui afficher une boite de dialogue en l’informant que le prix de vente est inferieur au prix d’achat. (3 pts)
5- Ajouter un bouton Modifier qui permet d’enregistrer les modifications sur l’article en cours. (2 pts)
6- Ajouter un bouton supprimer qui permet de supprimer l’article en cours avec confirmation. (2 pts)
7- Créer une Interface qui affiche les articles en rupture de stock. (2 pts)
8- Créer une interface de simulation de vente : on choisi l’article d’une liste déroulante et on indique la quantité. Le programme affiche dans un Libellé le prix à payer et le gain = (prix de vente – prix d’achat)* quantité. (3 pts)

Aucun commentaire:

Enregistrer un commentaire