Easier to read with cream paper, a tint, more contrast or larger text? Choose your colours and text, once, for every page.

Aperçu

Une pile au travail

Voici la première page de la leçon. Lis-la et essaie les activités. La suite est dans le cours complet.

35 minutes

Le bouton retour

Tu visites un site de sport. Puis la météo. Puis une vidéo. Tu appuies sur « retour » : tu retombes sur la météo. Encore une fois : le sport.

Le navigateur retient les pages dans une pile. Le bouton retour retire la page du dessus.

Dans cette leçon, tu vois deux travaux que fait une pile.

Mots-clés

MotCe que ça veut direExemple
HistoriqueLa liste des pages déjà visitées, gardée dans une pile.accueil, sport, météo
Parenthèse ouvranteLe signe qui commence un groupe.(
Parenthèse fermanteLe signe qui termine un groupe.)
Bien parenthéséChaque ouvrante a sa fermante, dans le bon ordre.(a[b])
ImbriquéUn groupe placé à l’intérieur d’un autre.(a(b))
ProfondeurLe nombre de groupes ouverts en même temps.((a)) a une profondeur de 2

Les cellules que les étudiants remplissent restent vides dans cet aperçu.

À toi : le bouton retour

Code: python
# La page d'avant est au sommet de la pile des pages visitées.
pages_precedentes = []
page = "accueil"
print("Je suis sur", page)

# Je visite le sport : je pose la page actuelle sur la pile.
pages_precedentes.append(page)
page = "sport"
print("Je suis sur", page, "| pile :", pages_precedentes)

pages_precedentes.append(page)
page = "meteo"
print("Je suis sur", page, "| pile :", pages_precedentes)

# Bouton retour : on dépile la dernière page posée.
page = pages_precedentes.pop()
print("Retour. Je suis sur", page, "| pile :", pages_precedentes)

# Appuie une deuxième fois sur retour. Où arrives-tu ?

Exemple travaillé : suivre l’historique

GestePage actuellePile des pages d’avant
Départaccueil[]
Visiter sportsport[accueil]
Visiter météometeo[accueil, sport]
Retoursport[accueil]
Retouraccueil[]
Visiter vidéovideo[accueil]

Les cellules que les étudiants remplissent restent vides dans cet aperçu.

À toi : où est-on ?

À toi de jouer

À toi : où est-on ?

3 questions
Essayez : vos réponses sont notées ici puis oubliées. Connectez-vous si vous voulez conserver votre score et reprendre là où vous en étiez.Se connecter pour conserver mon score

Tes réponses sont corrigées ici et ne sont pas conservées. Un compte garde tes résultats.

Le deuxième travail : les parenthèses

Un texte est bien parenthésé si chaque ouvrante a sa fermante, dans le bon ordre.

(a[b]) est bien placé. (a] ne l’est pas. ((a) non plus.

Un correcteur de code fait cette vérification tout le temps. Il utilise une pile.

La règle pour vérifier

On lit le texte lettre par lettre, de gauche à droite.

  1. Une ouvrante : on l’empile.
  2. Une fermante : on dépile. La pile ne doit pas être vide. L’ouvrante retirée doit être de la même sorte.
  3. Une autre lettre : on l’ignore.

À la fin, la pile doit être vide.

Exemple travaillé : vérifier (a[b])

LettreGestePile après
(empiler[(]
aignorer[(]
[empiler[(, []
bignorer[(, []
]dépiler [ : bonne sorte[(]
)dépiler ( : bonne sorte[]
Finpile videBien placé

Les cellules que les étudiants remplissent restent vides dans cet aperçu.

À toi : la vérification en code

Code: python
def bien_parenthese(texte):
    pile = []
    for lettre in texte:
        if lettre == "(" or lettre == "[":
            pile.append(lettre)
        elif lettre == ")" or lettre == "]":
            if len(pile) == 0:
                return False
            ouvrante = pile.pop()
            if lettre == ")" and ouvrante != "(":
                return False
            if lettre == "]" and ouvrante != "[":
                return False
    return len(pile) == 0


print(bien_parenthese("(a[b])"))
print(bien_parenthese("(a]"))
print(bien_parenthese("((a)"))
print(bien_parenthese(")a("))

# Essaie "([)]". Les deux sortes de parenthèses se croisent.

La leçon continue

9 parties de plus de cette leçon se trouvent dans le cours complet, avec les exercices et la vérification finale. Un compte te donne tout.