Correction de l'épreuve 8
Sujet (PDF intégré)
Exercice 1
def maximum_tableau(tab):
maximum = tab[0]
for element in tab:
if element > maximum:
maximum = element
return maximum
Exercice 2
class Pile:
"""Classe définissant une structure de pile."""
def __init__(self):
self.contenu = []
def est_vide(self):
"""Renvoie un booléen indiquant si la pile est vide."""
return self.contenu == []
def empiler(self, v):
"""Place l'élément v au sommet de la pile"""
self.contenu.append(v)
def depiler(self):
"""
Retire et renvoie l'élément placé au sommet de la pile,
si la pile n’est pas vide. Produit une erreur sinon.
"""
assert not self.est_vide()
return self.contenu.pop()
def bon_parenthesage(ch):
"""Renvoie un booléen indiquant si la chaîne ch est bien parenthésée"""
p = Pile()
for c in ch:
if c == '(':
p.empiler(c)
elif c == ')':
if p.est_vide():
return False
else:
p.depiler()
return p.est_vide()
Premier exercice bidon, deuxième un peu plus sympathique.
Précédent | Suivant