Vous êtes sur la page 1sur 2

UNIVERSITE SIDI MOHAMED BEN ABDELLAH ANNEE 2020-2021

FACULTE DES SCIENCES ET TECHNIQUE FES-SAIS


DEPARTEMENT D’INFORMATIQUE
ed LST Info

-------------------------------------------------------------------------------------------------
Programmation en JAVA
Exceptions
Devoir à rendre le 16 Mars
-------------------------------------------------------------------------------------------------

Exercice 1

Soit à faire une saisie de choix pour un menu sécurisé.

1. Ecrire une méthode saisirChoix qui prendra en paramètre un entier n et renverra


une valeur comprise entre 1 et n, tapée au clavier par l’utilisateur. Pour simplifier,
l’entier est déclaré et initialisé à 5 dans la méthode principale.
Les différentes erreurs qui pourront se produire seront lorsque :
- n est inférieur à 1
- L’utilisateur a entré un nombre qui n’est pas compris entre 1 et n
Chaque erreur devra être détectée par le programme et être signalée par une exception
spécifique. Il faut donc créer deux classes différentes d’exception pour les deux erreurs.

2. Ecrire une méthode afficheMenu qui prend en paramètre un tableau de chaînes de


caractères. Chaque chaîne de caractère décrit un choix du menu. La méthode doit
afficher ces différents choix.

3. Ecrire une méthode callMethod qui utilise les deux méthodes déjà écrites pour
afficher un menu et saisir le choix de l’utilisateur. Cette méthode devra traiter les deux
exceptions définies à la question 1. Elle prendra en entrée un tableau d’options (string)
et en sortie le choix effectué (sous la forme d’un entier).

1. Ecrire un programme qui initialise un tableau de Menus puis affiche le menu choisi
par l’utilisateur. Il capturera les exceptions susceptibles d’être levées.
2. La sortie de ce programme doit être conforme au screenshot suivant :

1 Pr A.MAJDA
Exercice 2

On souhaite traiter des comptes bancaires. Un compte bancaire possède à tout moment
une donnée de type double, son solde. Il est caractérisé par ailleurs par un code donné sous
forme de chaîne de caractères, et un titulaire qui est une personne physique. Ce solde peut être
positif (compte créditeur) ou négatif (compte débiteur). Au départ, un compte bancaire a un
solde nul, un code nul par défaut, et un titulaire nul. Il est aussi possible de créer un compte en
précisant son solde initial, son titulaire et son code initial.
Utiliser son compte consiste à pouvoir y faire des dépôts et des retraits. Pour ces deux
opérations, il faut connaître le montant de l'opération et vérifier que le code proposé est bien
le code du compte.
L'utilisateur peut aussi consulter le solde de son compte.

A. Ecrire la classe PersonnePhysique, on suppose qu’elle possède un nom et un code


CIN, tous les deux de type chaine de caractères.

B. Ecrire une classe CompteBancaire prenant en compte la description précédente. Cette


classe comprendra les méthodes suivantes :

1. Constructeur(s)
2. Une méthode de modification du code
3. Une méthode de consultation du solde
4. Une méthode de dépôt
5. Une méthode de retrait. Pour cette méthode définissez tout d’abord une classe
RetraitInterditException qui sera instanciée par la méthode de retrait dans
le cas d'une tentative de retrait impossible (solde insuffisant).

C. La banque souhaite autoriser pour certains clients un découvert. Le découvert est un montant
plafonné mis à la disposition du client par la banque. Un retrait est alors possible tant que le
client ne dépasse pas ce découvert autorisé. Le cas échéant, le retrait est refusé. Dans ce
dernier cas, la méthode de retrait lancera une exception.
1. Proposer une solution pour la gestion des comptes à découvert (par héritage ou
implémentation d’interface). Justifier le choix de la solution.
2. Ecrire le programme principal pour tester la méthode de retrait traiter les exceptions.

2 Pr A.MAJDA

Vous aimerez peut-être aussi