NSI (terminale) · Chapitre 1 · Exercice d'entraînement
Interface ou implémentation ?
Structures de données linéaires · Interface, implémentation et listes · niveau 1 (application)
Énoncé
Interface ou implémentation ?
Un module propose une structure Agenda. On lit dans sa documentation et dans son code les six phrases suivantes.
- «
ajouter(rdv)insère un rendez-vous et ne renvoie rien. » - « Les rendez-vous sont rangés dans une liste Python triée par date. »
- «
prochain()renvoie le rendez-vous le plus proche sans le retirer. » - « L'attribut
_contenuest unedeque. » - «
prochain()lève uneIndexErrorsi l'agenda est vide. » - «
ajouterdécale les rendez-vous plus tardifs d'une case vers la droite. »
- Pour chaque phrase, dire si elle relève de l'interface ou de l'implémentation.
- Soit
Lune liste Python de éléments. Donner le coût de chacune des opérations :L[k],L.append(x),L.insert(0, x),L.pop(),L.pop(0),x in L.
Un exercice à chercher : son corrigé n'est pas publié. Sur Adloun, le tuteur guide par questions, sans donner la réponse.