File

publicité
L e 03/03/2009
Examen de Fin de Module
Techniques de Programmation Structurée
Durée : 2h30
Barème : / 30 pts dont 2 pts réservés à la
présentation générale de vos algorithmes et à
la qualité des travaux effectués.
Pour un agent de banque, il vous est demandé de réaliser une application lui permettant de faciliter ses
tâches journalières. Cet agent par la nature de son travail peut être amené à faire du change, à créer des
comptes ou à effectuer des opérations de dépôt ou de retrait d’argent. En fin de journée, l’application à
réaliser doit lui permettre de contrôler si le montant qu’il a en espèce correspond à la situation finale
de l’application.
Vous disposez des fonctions prédéfinies suivantes :



Val(chaine de caractère) : Qui reçoit une chaine de caractère et retourne la valeur numérique
associée à cette chaine
CDate(chaine de caractère) : Qui reçoit une chaine de caractère et retourne la valeur date
associée à cette chaine
Date() : Qui retourne la date du jour
Le change
Les taux de change correspondant à chaque devise sont enregistrés dans un fichier Devise.txt. Ce
fichier contient trois champs le premier pour la devise, le deuxième pour le taux d’achat et le troisième
pour le taux de vente
Tâche 1.
Ecrire l’algorithme qui permet de charger à partir du fichier précédent un tableau à deux
dimensions Devise. La première colonne du tableau devra contenir les devises et la
deuxième le taux d’achat et la troisième le taux de vente. ............................................... 2 pts
Les taux de change peuvent varier en cours de journée.
Tâche 2.
Ecrire l’algorithme qui demande à l’agent de saisir la devise souhaitée et les nouveau taux
correspondants. Si la devise n’existe pas dans le tableau l’algorithme retourne le message
« Devise inconnue » sinon les taux pour la devise en question sont modifiés ................ 2 pts
L’agent peut effectuer du change soit pour l’achat (un client dépose un montant d’une certaine devise
autre que le DH et souhaite le prendre en DH) ou pour la vente (un client dépose un montant en DH et
souhaite le prendre en une autre devise)
Tâche 3.
Ecrire l’algorithme qui demande à l’agent de saisir le montant à échanger, la devise de
dépôt et la devise de retrait et qui affiche le montant à remettre au client dans la nouvelle
espèce (en exploitant le tableau)....................................................................................... 3 pts
Les nouveaux taux doivent être rechargés dans le fichier
Tâche 4.
Ecrire l’algorithme qui permet de charger les nouveaux taux dans le fichier Devise.txt 2 pts
EFM Tech. Prog. Structurée / Naoual ABDALLAH / Gpe A et B
Page 1
L e 03/03/2009
Les comptes
L’agent est souvent amené à créer des comptes pour les nouveaux clients. Pour chaque compte, on
note le numéro du compte, le nom du client, le prénom du client et le solde (0 à la création du compte).
Les comptes sont enregistrés dans un tableau Comptes à quatre colonnes et la banque peut gérer 2000
comptes au maximum.
Les numéros de comptes, pour être valide, doivent répondre à la règle suivante : Le nombre composé
des deux derniers chiffres est le reste de la division du nombre composé des autres chiffres par 36.
Tâche 5.
Ecrire l’algorithme qui demande à l’agent de saisir les informations nécessaires pour
ajouter un nouveau compte (Numéro de compte, Nom et prénom du client) sachant
qu’avant de stocker un numéro de compte dans le tableau Comptes, le numéro de compte
est saisi chiffre par chiffre dans un tableau TmpCompte à une dimension. L’utilisateur
arrête la saisie en introduisant un point. Le système vérifie ensuite que le numéro de
compte est valide. S’il ne l’est pas l’utilisateur doit reprendre la saisie du numéro de
compte jusqu’à obtenir un numéro de compte valide. Le numéro de compte valide à insérer
dans le tableau Compte sera alors construit à partir du tableau tmpCompte et stocké dans
la première case du tableau Compte. ............................................................................... 4 pts
Tâche 6.
Ecrire une procédure ProcDéduire qui déduit 50 DH de frais de tenue de compte de tous
les comptes créés le jour même ........................................................................................ 2 pts
Tâche 7.
Ecrire une procédure ProcTrier permettant de trier le tableau Comptes par solde
décroissant ........................................................................................................................ 2 pts
Les opérations sur les comptes
Les opérations de dépôt ou de retrait effectuées sont enregistrées dans un tableau Opérations. Ce
tableau contient une colonne pour le numéro de l’opération, une colonne pour le numéro de compte,
une colonne pour la date de l’opération, une colonne pour le type de l’opération (Retrait ou Dépôt) et
une colonne pour le montant.
Pour ajouter une nouvelle opération, l’agent introduit le numéro de compte concerné, la date de
l’opération, le type de l’opération et le montant (le numéro de l’opération est généré de manière
automatique. L’algorithme cherche le plus grand numéro d’opération dans le tableau Opérations et
l’incrémente de 1).
Tâche 8.
Ecrire une fonction FctSolde qui retourne le solde pour un compte dont le numéro est
donné en paramètre .......................................................................................................... 2 pts
Tâche 9.
Ecrire l’algorithme permettant de créer une nouvelle opération (une opération de retrait
n’est autorisée que si le compte contient le montant souhaité) et de mettre à jour les
comptes (opération de retrait= le solde diminue, opération de dépôt= le solde augmente
pour le compte en question) ............................................................................................. 5 pts
Tâche 10. Ecrire une fonction FctCaisse permettant de calculer pour la journée en cours le montant
que l’agent doit avoir en caisse (le montant total déposé pour la journée en cours – le
montant total retiré) ......................................................................................................... 2 pts
Tâche 11. Ecrire une procédure qui affiche la liste des opérations de dépôt pour une date donnée et
retourne le montant total pour ces dépôts ......................................................................... 2 pts
EFM Tech. Prog. Structurée / Naoual ABDALLAH / Gpe A et B
Page 2
Téléchargement