Adloun

informatique (tronc commun des prépas scientifiques) · Chapitre 1 · Application directe du cours

Diagnostiquer trois erreurs

La discipline de programmation · niveau 1 (application)

Énoncé

Déterminer la nature des erreurs (syntaxe, exécution ou logique) dans les fragments suivants et les corriger :

# (a)
def double(x)
    return 2 * x

# (b)
t = [1, 2, 3]
print(t[3])

# (c)
def carre(n):
    return n * 2

Corrigé

  • (a) Erreur de syntaxe (SyntaxError) : Il manque le symbole : à la fin de la déclaration de la fonction. Correction : def double(x):.
  • (b) Erreur d'exécution (IndexError) : La liste t est de taille 3, ses indices valides sont donc 0, 1 et 2. L'accès à t[3] provoque un plantage. Correction : print(t[2]) (pour le dernier élément).
  • (c) Erreur de logique : La fonction s'exécute sans erreur mais renvoie le double () au lieu du carré (). Seul un test d'assertion peut révéler cette anomalie. Correction : return n * n ou return n ** 2.

Exercices semblables

Le cours du chapitre · Tous les exercices du chapitre