DOMAINE: ANALYSE ALGORITHMIQUE.
- Nombre de sujets: 3
- Nombre de propositions à cocher: 13
- Durée totale allouée: 265 secondes
SUJET N°1: DEMARCHE PAR ABSTRACTION-Généralités:
Que peut-on dire de la démarche par abstraction appliquée à l'algorithmique ?
Proposition N° 1 (Valeur: 2
):Elle permet de dissimuler certains détails de réalisation que l'on ne souhaîte pas divulguer.
Proposition N° 2 (Valeur: 2
):Elle permet de réduire la complexité des algorithmes.
Proposition N° 3 (Valeur: 2
):Lorsqu'on travaille en collaboration, l'encapsulation a l'inconvénient de masquer des informations aux
autres membres du groupe.
Proposition N° 4 (Valeur: 2
):Cette démarche descendante, qui s'intéresse d'abord aux mécanismes généraux avant d'aborder les détails,
permet de répondre aux besoins exprimés d'une manière plus efficace.
SUJET N°2: DEMARCHE PAR ABSTRACTION-Généralités (suite):
Soit le pseudo-code suivant:
DEBUT
Var IndicateurCartePresente en booleen // VRAI si une carte est introduite dans le lecteur, FAUX sinon.
Var CommandeArret en booleen // VRAI si une commande d'arrêt distributeur est reçue, FAUX sinon.
CommandeArret ← FAUX
TANT QUE ( CommandeArret == FAUX ) FAIRE
< Saisir la donnée IndicateurCartePrésente fournie par le lecteur>
SI ( IndicateurCartePrésente == VRAI ) ALORS
TraiterUneTransaction ()
SINON
SORTIR "Introduisez votre carte de crédit" // Sur l'écran client
FINSI
< Saisir la donnée CommandeArret fournie par le pupitre de commande>
FIN TANTQUE
FIN
Cet algorithme représente le premier niveau de l'analyse du fonctionnement d'un distributeur de billets.
Selon vous, quelles instructions de cet algorithme constituent des abstractions de détails de réalisation ?
Proposition N° 1 (Valeur: 2
):Uniquement les instructions:
< Saisir la donnée IndicateurCartePrésente fournie par le lecteur>
et
< Saisir la donnée CommandeArret fournie par le pupitre de commande>
Proposition N° 2 (Valeur: 2
):Uniquement l'instruction L'instruction appel de procédure: TraiterUneTransaction ()
Proposition N° 3 (Valeur: 2
):Les 3 instructions:
< Saisir la donnée IndicateurCartePrésente fournie par le lecteur>
< Saisir la donnée CommandeArret fournie par le pupitre de commande>
TraiterUneTransaction ()
SUJET N°3: DEMARCHE PAR ABSTRACTION-Machines virtuelles et niveaux d'abstraction:
On se propose maintenant d'analyser l'instruction:
TraiterUneTransaction (). Après analyse, on obtient
le pseudo-code suivant:
PROCEDURE TraiterUneTransaction ()
Var IdentificateurCompteBancaire en chaine de caractères
Var CodeSecret en chaine de caractères
Var CarteIdentifiee en booleen // VRAI si la carte est identifiée et le code secret validé, FAUX sinon
Var TypeTransaction en chaine de caractères // "R": retrait, "C": consultation du solde, "A": Annulation
ENTRER IdentificateurCompteBancaire // Depuis le lecteur de carte
SORTIR "Taper le code secret à l'abris des regards indiscrets, puis valider" // Sur l'écran client
ENTRER CodeSecret // Depuis le clavier client
SORTIR "Patientez..." // Sur l'écran client
CarteIdentifiee ← DemandeIdentification ( IdentificateurCompteBancaire, CodeSecret )
SI ( CarteIdentifiee == VRAI ) ALORS
< Saisie du type de transaction dans TypeTransaction >
SUIVANT LE CAS TypeTransaction FAIRE
CAS "R": RetraitLiquide ( IdentificateurCompteBancaire, CodeSecret )
CAS "C": ConsultationSolde ( IdentificateurCompteBancaire, CodeSecret )
CAS "A": SORTIR "Transaction annulée. Veuillez récupérer votre carte"
AUTRES CAS: SORTIR "ERR 123: SAISIE TYPE TRANSACTION" // Sur l'écran administrateur
FINCAS
SINON
SORTIR "Echec d'identification. Veuillez récupérer votre carte" // Sur l'écran client
FINSI
< Ejecter la carte >
FIN PROCEDURE
Selon vous, quels services devraient être fournis par la machine virtuelle supportant cet algorithme ?
Proposition N° 1 (Valeur: 1
):L'identification d'un compte en banque et l'authentification du code secret d'un utilisateur
Proposition N° 2 (Valeur: 1
):La saisie du code secret
Proposition N° 3 (Valeur: 1
):La transaction permettant au client de choisir le service désiré
Proposition N° 4 (Valeur: 1
):Le retrait de liquide
Proposition N° 5 (Valeur: 1
):La consultation du solde d'un compte
Proposition N° 6 (Valeur: 1
):L'éjection de la carte en fin de transaction.