Le cours donne le fichier tests grille.py, écrit avant grille.py
Exercice d'entraînement · niveau 2 · NSI (première), chapitre 11 — Conduire un projet · Du sujet au code
Énoncé
Le cours donne le fichier tests_grille.py, écrit avant grille.py. Écrire maintenant grille.py pour qu'il passe ces trois tests. Chaque ligne du code doit être justifiée par un test précis.
Corrigé
# grille.py
def creer(n, p):
"""Grille n x p remplie de 0. Precondition : n > 0 et p > 0."""
assert n > 0 and p > 0, "dimensions invalides"
return [[0] * p for _ in range(n)]
def lire(g, i, j):
"""Contenu de la case (i, j)."""
assert 0 <= i < len(g) and 0 <= j < len(g[0]), "case hors grille"
return g[i][j]
def ecrire(g, i, j, v):
"""Range v dans la case (i, j). Ne renvoie rien."""
assert 0 <= i < len(g) and 0 <= j < len(g[0]), "case hors grille"
g[i][j] = v
Chaque ligne est exigée par un test.
| Test | Ce qu'il impose |
|---|---|
| `test_creation` | `creer` rend lignes de colonnes, toutes à ---
donc la compréhension de liste, et le remplissage</td></tr><tr style=""><td style="text-align:left;padding:8px 12px;color:#34332D;vertical-align:top"> Contrôle : les trois tests du cours passent et impriment Un détail qui n'en est pas un : Les autres exercices de ce chapitre Le cours du chapitre Un blocage sur cet exercice ? Le tuteur d'Adloun guide par questions, sans donner la réponse. |