U6-S1-M1Python : premiers programmes
0 / 0
Scénario 1 · MaisonDesJeux

Python : premiers programmes

Tout ce dont vous avez besoin pour ce module, dans un seul document. Cochez au fur et à mesure.

U6-S1-M1module
Élèvedocument
MaisonDesJeuxscénario 1
B · 3 hformat et durée

Comment utiliser ce document

  • À gauche, une partie à la fois. Cliquez pour changer de partie.
  • Les boutons bleus A1 ouvrent une annexe dans le panneau de droite.
  • Vos réponses et vos cases cochées sont gardées dans ce navigateur.
Rappels

Ce qu'il faut savoir avant de commencer

Ce qu'il faut savoir avant de commencer. Lisez-le si vous avez un doute. Environ 10 minutes.

Aucun prérequis en programmation : on part de zéro. Trois rappels vous aideront à vous servir du poste.

C'est quoi l'extension d'un fichier ?

C'est la fin du nom du fichier, après le point. Elle dit quel genre de fichier c'est.

Exemple : photo.jpg est une image, ex01.py est un programme Python.

C'est quoi un terminal ?

Un terminal est une fenêtre où l'on tape des commandes au clavier. On tape la commande, puis on appuie sur Entrée. La réponse s'affiche juste en dessous.

Sous Windows, le terminal s'appelle PowerShell. VS Code en ouvre un en bas de sa fenêtre.

Comment écrit-on un nombre à virgule ?

En programmation, la virgule s'écrit avec un point. On écrit 12.5, pas 12,5.

La virgule sert à autre chose : séparer deux valeurs.

Vérifiez-vous

Voir les réponses
  1. .py : c'est un programme Python.
  2. Sur la touche Entrée.
  3. 29.90, avec un point.
Cours

Variables, types et premières erreurs

COURS-U6-S1-01

Léa Fournier est animatrice bénévole à MaisonDesJeux, une association de jeux de société. Chaque mercredi, elle calcule à la main les cotisations des nouveaux adhérents.

Bruno, un autre bénévole, lui a écrit un petit programme pour faire le calcul. Léa le lance. L'écran se remplit de lignes rouges en anglais, et le programme s'arrête.

Léa vous appelle : « Le programme de Bruno est cassé. Tu peux regarder ? »

À la fin de la séance, vous saurez écrire et lancer un petit programme en Python. Vous saurez aussi lire un message d'erreur pour trouver la ligne qui ne va pas.

Le plan de la séance

  1. Écrire et lancer un programme.
  2. Ranger des valeurs : variables et types.
  3. Calculer, comparer, mettre en forme.
  4. Lire un message d'erreur.

La question de départ

Votre GPS vous dit : « Faites demi-tour. » Vous l'ignorez. Il ne plante pas : il recalcule. Le programme de Bruno, lui, s'arrête net. Pourquoi ?

Capsule 1 sur 4Écrire et lancer un programme

Avant de réparer le programme de Bruno, il faut savoir comment un programme marche. Que se passe-t-il quand on le lance ?

Un programme est une liste d'instructions, écrite dans un fichier texte. Python ne lit pas ce fichier tout seul : il a besoin d'un INTERPRÉTEUR. C'est le logiciel qui lit le programme et exécute ses instructions, une ligne après l'autre.

Pensez à une recette de cuisine. La recette ne fait rien toute seule. Il faut quelqu'un qui lit chaque étape, dans l'ordre, et qui la fait.

Pour écrire le programme, on utilise un ENVIRONNEMENT DE DÉVELOPPEMENT, qu'on appelle aussi IDE, pour Integrated Development Environment. C'est un éditeur de texte fait pour le code : il colore les mots, il signale les fautes, et il ouvre un terminal. Ici, on utilise VS Code.

Voici le chemin d'un programme :

  1. Écrire : on tape les instructions dans un fichier .py, dans VS Code.
  2. Enregistrer : Ctrl+S. Un fichier non enregistré n'est pas celui que Python lit.
  3. Lancer : dans le terminal, on tape python suivi du nom du fichier.
  4. Lire : le résultat, ou une erreur, s'affiche dans le terminal.
Le programme est écrit dans un fichier, l'interpréteur l'exécute, le résultat s'affiche dans le terminal Le fichier ex01.py print("Bonjour") print("Bonne partie") écrit dans VS Code L'interpréteur Python lit et exécute ligne après ligne Le terminal > python ex01.py Bonjour Bonne partie Mode interactif : on tape python seul, puis une ligne après >>>. Python répond tout de suite.
Le programme est écrit dans un fichier, l'interpréteur l'exécute, le résultat s'affiche dans le terminal

Deux instructions servent dès le début. print() affiche à l'écran : c'est une sortie. input() pose une question et attend la réponse au clavier : c'est une entrée.

nom = input("Votre prénom : ")
print("Bonjour", nom)

On peut aussi lancer Python seul, sans fichier : c'est le mode interactif. Python affiche >>>, on tape une ligne, il répond tout de suite.

C'est pratique pour essayer. Mais rien n'est gardé quand on ferme.

On le fait ensemble — Le premier programme de Léa

1. Léa veut afficher « Bonne partie ! ». Quelle instruction ?

2. Elle l'écrit dans accueil.py. Que fait-elle avant de lancer ?

3. Que tape-t-elle dans le terminal ?

4. Elle veut que le programme demande le prénom du joueur. Quelle instruction ?

Exemple Pourquoi
✔ Je modifie, j'enregistre, puis je relance. Python lit le fichier tel qu'il est enregistré sur le disque.
✘ « J'ai corrigé, mais l'erreur est toujours là. » sans avoir enregistré Python a relu l'ancienne version du fichier.
✘ Taper print("Bonjour") dans le terminal PowerShell, sans lancer Python PowerShell ne parle pas Python. Il faut un fichier lancé avec python, ou le mode interactif.

Checkpoint

À l'oral, 3 minutes. Chacun note sa réponse sur sa feuille, puis on corrige.

1. Quel est le rôle de l'interpréteur ?

2. Quelle instruction affiche, et quelle instruction lit le clavier ?

Capsule 2 sur 4Ranger des valeurs : variables et types

On sait lancer un programme. Mais pour calculer une cotisation, il faut garder des valeurs : un prix, un âge, un nom. Où les range-t-on ?

On les range dans des VARIABLES. Une variable est un nom posé sur une valeur, comme une étiquette sur une boîte.

On l'écrit avec le signe égal : prix = 25. Ce signe ne veut pas dire « égal » comme en maths. Il veut dire « range 25 dans la boîte nommée prix ».

Chaque valeur a un TYPE : sa nature. Python ne traite pas de la même façon un texte et un nombre.

Type Ce que c'est Exemple
int un nombre entier 4, 340
float un nombre à virgule, écrit avec un point 12.5, 29.90
str du texte, entre guillemets "Catane", "17"
bool vrai ou faux True, False

La fonction type() donne le type d'une valeur : type(12.5) affiche <class 'float'>.

Attention au piège du début : input() rend toujours du texte. Si Léa tape 17, le programme reçoit "17", entre guillemets. Pour calculer, il faut une CONVERSION : changer le type d'une valeur.

  1. int("17") donne le nombre entier 17.
  2. float("29.90") donne le nombre à virgule 29.9.
  3. str(340) donne le texte "340".

Sans conversion, attention : entre deux textes, + colle. "3" + "4" donne "34".

Une variable est une étiquette posée sur une valeur ; chaque valeur a un type ; int() convertit un texte en nombre "Catane" jeu str : du texte 4 joueurs int : un entier 12.5 prix float : un décimal True ouvert bool : vrai ou faux input() rend toujours du texte. Pour calculer, on convertit : "17" int() 17 + 1 18 texte saisi nombre entier on peut calculer
Une variable est une étiquette posée sur une valeur ; chaque valeur a un type ; int() convertit un texte en nombre

Instant histoire — 1996 : Ariane 5 et le nombre trop grand

Le 4 juin 1996, la fusée Ariane 5 explose 40 secondes après son premier décollage.

Un programme repris d'Ariane 4 range une vitesse dans une variable trop petite. Ariane 5 va plus vite : le nombre ne tient plus. L'ordinateur de bord reçoit des valeurs absurdes.

Le programme marchait sur Ariane 4. Pourquoi a-t-il échoué sur Ariane 5 ?

On le fait ensemble — Deux tables de joueurs

Le programme demande les joueurs de deux tables, puis les additionne : t1 = input("Table 1 : "), t2 = input("Table 2 : "), print(t1 + t2). Léa tape 3, puis 4.

1. Quel est le type de t1 ?

2. Qu'affiche le programme ?

3. Comment corriger ?

Exemple Pourquoi
✔ age = int(input("Votre âge : ")) La saisie est convertie tout de suite en nombre entier.
✘ int("29.90") Le texte contient un point : ce n'est pas un entier. Il faut float().
✘ prix = 12,5 La virgule ne fait pas un nombre décimal. Il faut écrire 12.5.

Checkpoint

À l'oral, 3 minutes. Chacun note sa réponse sur sa feuille, puis on corrige.

1. Donnez le type de chaque valeur : 25, "25", 25.0.

2. Pourquoi faut-il convertir ce que rend input() avant de calculer ?

Capsule 3 sur 4Calculer, comparer, mettre en forme

On sait garder des valeurs. Comment calculer avec elles, puis afficher un résultat propre ?

On utilise des OPÉRATEURS : des signes qui font un calcul ou une comparaison entre deux valeurs.

Opérateur Ce qu'il fait Exemple Résultat
+, -, * addition, soustraction, multiplication 4 * 25 100
/ division, toujours à virgule 25 / 2 12.5
// division entière : combien de fois 17 // 4 4
% le reste de la division entière 17 % 4 1
==, != égal, différent 16 == 18 False
<, <=, >, >= plus petit, plus grand 16 < 18 True

Une comparaison rend toujours True ou False. Attention : = range une valeur, == compare deux valeurs.

Pour afficher un résultat propre, on utilise une chaîne formatée : un texte précédé de la lettre f. Dans ce texte, chaque { } est remplacée par une valeur.

  1. On écrit f devant les guillemets.
  2. On met le nom de la variable entre accolades : {prix}.
  3. On ajoute la mise en forme après deux-points : {prix:.2f} affiche deux chiffres après le point.
Dans une chaîne formatée, chaque paire d'accolades est remplacée par une valeur mise en forme Le programme print(f"Demi-tarif : {prix:.2f} €") prix vaut 12.5 Demi-tarif : 12.50 € Le f devant les guillemets : les { } sont remplacées par la valeur. :.2f veut dire : deux chiffres après le point.
Dans une chaîne formatée, chaque paire d'accolades est remplacée par une valeur mise en forme

On le fait ensemble — Les tables du tournoi

17 joueurs arrivent. Chaque table accueille 4 joueurs.

1. Combien de tables complètes ? Quel calcul ?

2. Combien de joueurs restent en attente ?

3. Une table a-t-elle plus de 3 joueurs ?

4. Écrivez l'affichage « 4 tables, 1 en attente » avec une chaîne formatée.

Exemple Pourquoi
✔ f"Total : {total:.2f} €" affiche Total : 12.50 € La valeur est mise en forme avec deux chiffres après le point.
✘ print(age = 18) pour savoir si l'âge vaut 18 = range une valeur. Pour comparer, il faut == : print(age == 18).
✘ "Total : " + total avec total entier On ne colle pas un texte et un nombre. Utilisez une chaîne formatée.

Checkpoint

À l'oral, 3 minutes. Chacun note sa réponse sur sa feuille, puis on corrige.

1. Que donnent 25 / 2, 25 // 2 et 25 % 2 ?

2. Avec prix = 6, qu'affiche print(f"{prix:.2f} €") ?

Capsule 4 sur 4Lire un message d'erreur

Revenons aux lignes rouges de Léa. Elles font peur. Pourtant, elles disent exactement où est le problème.

Il y a deux grandes familles d'erreurs. Une ERREUR DE SYNTAXE est une faute d'écriture : une parenthèse oubliée, un guillemet manquant. Python la voit en lisant le fichier, avant de commencer.

Rien ne s'exécute, même pas la première ligne.

Une ERREUR D'EXÉCUTION arrive pendant que le programme tourne. Chaque ligne est bien écrite, mais l'une d'elles ne peut pas se faire : un nom inconnu, un texte qu'on ajoute à un nombre.

Les lignes d'avant ont déjà tourné. Le programme s'arrête net à la ligne fautive.

C'est comme une lettre. Une faute d'orthographe se voit avant de l'envoyer. Une mauvaise adresse ne se voit qu'au moment où le facteur ne trouve pas la maison.

Un message d'erreur se lit toujours de la même façon :

  1. La dernière ligne : le type d'erreur, puis le message. Par exemple TypeError, puis l'explication.
  2. La ligne File : le nom du fichier et le numéro de la ligne fautive.
  3. La ligne recopiée : le code exact qui a échoué, souligné par des ^ ou des ~.
  4. On corrige cette ligne, on enregistre, on relance.
Un message d'erreur donne le fichier, la ligne, la ligne fautive, le type et le message Traceback (most recent call last): File "...\panne3.py", line 6, in <module> print("Total à payer : " + total + " euros") TypeError: can only concatenate str (not "int") to str 1. Le fichier et la ligne 2. La ligne fautive, recopiée 3. Le type, puis le message On lit de bas en haut : d'abord le type et le message, puis la ligne. Erreur de syntaxe rien ne s'exécute, pas même la ligne 1 Erreur d'exécution le programme s'arrête à la ligne fautive
Un message d'erreur donne le fichier, la ligne, la ligne fautive, le type et le message
Type d'erreur Famille Ce qu'il veut dire
SyntaxError syntaxe le code est mal écrit
NameError exécution ce nom de variable n'existe pas
TypeError exécution cette opération ne marche pas avec ces types
ValueError exécution la valeur ne convient pas, comme int("douze")

Instant histoire — 1947 : le premier « bug » était un vrai insecte

En 1947, à l'université Harvard, l'équipe de Grace Hopper cherche pourquoi un calculateur fait des erreurs.

Elle trouve un papillon de nuit coincé dans une pièce de la machine. L'équipe le colle dans son cahier de bord, avec la mention « premier vrai cas de bug trouvé ».

Pourquoi l'équipe a-t-elle noté la panne dans un cahier ?

On le fait ensemble — Le message du programme de Bruno

Le message : File "cotisation.py", line 5, puis la ligne print("Total : " + total), puis TypeError: can only concatenate str (not "int") to str.

1. Quel est le type d'erreur ?

2. Quelle ligne est fautive ?

3. Que veut dire le message ?

4. Comment corriger ?

Exemple Pourquoi
✔ Je lis la dernière ligne, puis le numéro de ligne. Le type et le message disent quoi chercher. Le numéro dit où.
✘ « Il y a une erreur, je recopie tout le programme. » Le message donne la ligne : on corrige seulement celle-là.
✘ « La ligne indiquée est toujours la ligne fautive. » Pour une parenthèse jamais fermée, Python montre la ligne où elle s'ouvre. La faute peut aussi venir d'une ligne au-dessus.

Checkpoint

À l'oral, 3 minutes. Chacun note sa réponse sur sa feuille, puis on corrige.

1. Un programme n'affiche rien et montre SyntaxError. Pourquoi la première ligne n'a-t-elle pas tourné ?

2. Dans un message d'erreur, où lit-on le numéro de la ligne fautive ?

Ce qu'on retient

Si vous ne devez retenir que trois choses

1. Écrivez, enregistrez, lancez avec python fichier.py, puis lisez le terminal.

2. Convertissez ce que rend input() avant de calculer : int() pour un entier, float() pour un décimal.

3. Lisez une erreur par le bas : le type, le message, puis le numéro de ligne.

Revenons à Léa. Les lignes rouges n'étaient pas une panne mystérieuse. Elles disaient le type d'erreur, le fichier et la ligne.

Vous savez maintenant les lire. Vous corrigez une seule ligne, vous enregistrez, vous relancez : le calcul des cotisations marche.

Fiche

Variables, types et premières erreurs

COURS-U6-S1-01

L'essentiel

Les mots à connaître

Mot En clair
Environnement de développement L'éditeur fait pour le code, ici VS Code.
print() Affiche à l'écran : une sortie.
input() Lit le clavier : une entrée. Rend toujours un str.
int(), float(), str() Convertissent en entier, en décimal, en texte.
Opérateur Un signe qui calcule ou compare : +, //, %, ==, <.
Chaîne formatée f"Total : {total:.2f} €" : les { } sont remplacées par les valeurs.

Les types

Type Exemple Pour
int 340 compter
float 12.5 un prix, une moyenne
str "Catane" du texte
bool True le résultat d'une comparaison

La méthode pour une erreur

  1. Lisez la dernière ligne : le type d'erreur et le message.
  2. Trouvez la ligne File : le fichier et le numéro de ligne.
  3. Regardez la ligne recopiée et ce qui est souligné.
  4. Corrigez cette ligne, enregistrez, relancez.

Un exemple concret

Le programme de Léa calcule une cotisation.

age = input("Votre âge : ")
print("Dans un an :", age + 1)
TypeError: can only concatenate str (not "int") to str
Étape Ce qu'on fait Résultat
1 Type d'erreur TypeError : erreur d'exécution, de type
2 Ligne fautive la ligne 2 : age + 1
3 Cause age est un str, rendu par input()
4 Correction age = int(input("Votre âge : "))

Conclusion : avec la conversion, Léa tape 17 et le programme affiche Dans un an : 18.

Les pièges

Labo

Douze micro-exercices et trois pannes

LABO-U6-S1-01

Contexte — Vous êtes prestataire bénévole chez MaisonDesJeux, une association de jeux de société. Léa Fournier, animatrice, veut de petits programmes pour les soirées : accueil, tables, tarifs.

Avant d'écrire pour elle, vous vous entraînez sur douze exercices courts. Puis vous réparez trois programmes en panne, écrits par Bruno Sanchez, un bénévole.

Règle IA de la séance

Scénario 1 : pas d'IA pendant ce labo. Vous avez les annexes, la documentation de Python et le web classique.

Si vous avez un doute, demandez au formateur ou à votre binôme.

À la fin de ce labo, vous saurez écrire et lancer un programme court, convertir et mettre en forme des valeurs. Vous saurez aussi lire un message d'erreur et corriger la ligne fautive.

Comment ça se valide — à chaque point de contrôle, vous montrez votre résultat au formateur. Il valide, puis vous passez à la suite.

Les mots de la séance

Mot Ce que ça veut dire
Interpréteur Le logiciel Python qui lit le programme et l'exécute, ligne après ligne.
Variable Un nom posé sur une valeur : prix = 25.
Type La nature d'une valeur : int entier, float décimal, str texte, bool vrai ou faux.
Conversion Changer le type d'une valeur : int("17") donne 17.
Chaîne formatée Un texte précédé de f, où les { } sont remplacées par des valeurs.
Message d'erreur Les lignes que Python affiche quand il s'arrête : le fichier, la ligne, le type d'erreur.

Ce dont vous avez besoin

En binôme — le pilote tape, le lecteur lit les énoncés et les annexes à voix haute, et vérifie chaque résultat. On inverse à la partie C.

Le plan du labo

Partie Étapes Ce que vous obtenez Temps
A — Démarrer 1 à 5 un premier programme qui tourne 25 min
B — Variables, calculs, conversions 6 à 11 les exercices 2 à 7 35 min
C — Comparer et mettre en forme 12 à 17 les exercices 8 à 12, et les conversions expliquées 30 min
D — Trois pannes 18 à 22 trois programmes réparés, chaque message expliqué 30 min

PARTIE A — Démarrer

Étapes 1 à 5, environ 25 min. À la fin, votre premier programme s'affiche dans le terminal.

Besoin d'un rappel ? Revoir le cours : « Écrire et lancer un programme ».

01

Installer le dossier de travail

Vous devez voir : un dossier premiers_pas dans « Documents ». Il contient douze fichiers, de ex01.py à ex12.py, et un dossier pannes.

Si vous voyez un dossier premiers_pas dans un autre dossier premiers_pas : utilisez celui qui contient directement ex01.py.

02

Ouvrir le dossier dans VS Code

ls

Vous devez voir : le dossier pannes et les douze fichiers ex01.py à ex12.py, dans la dernière colonne. Le terminal est dans le dossier premiers_pas.

03

Vérifier Python

python --version

Vous devez voir : Python 3. suivi d'un numéro, par exemple Python 3.12.6.

Si vous voyez « python n'est pas reconnu », ou si une fenêtre du Microsoft Store s'ouvre : tapez py à la place de python. Exemple : py ex01.py.

04

Essayer le mode interactif

2 + 3
print("Bonne partie !")

Vous devez voir : 5, puis Bonne partie !. Après exit(), l'invite redevient PS C:\...\premiers_pas>.

05

Écrire l'exercice 1

Voici le premier exercice, fait en entier. Les suivants se font de la même façon.

print("Bienvenue à MaisonDesJeux !")
print("Ouvert le mercredi, le vendredi et le samedi.")
python ex01.py

Vous devez voir :

Bienvenue à MaisonDesJeux !
Ouvert le mercredi, le vendredi et le samedi.

Si vous voyez l'ancien résultat après une modification : le fichier n'est pas enregistré. Un petit rond sur l'onglet du fichier le signale. Faites Ctrl+S.

POINT DE CONTRÔLE A

  • Montrez au formateur l'exercice 1 qui tourne dans le terminal.
  • Le formateur a validé. Passez à la partie B.

PARTIE B — Variables, calculs, conversions

Étapes 6 à 11, environ 35 min. À la fin, les exercices 2 à 7 tournent.

Besoin d'un rappel ? Revoir le cours : « Ranger des valeurs : variables et types ».

Pour chaque exercice : lisez son énoncé dans l'annexe , écrivez le code dans le fichier, enregistrez, lancez. L'annexe donne ce que vous devez voir.

06

Exercice 2 : trois variables et leur type

Vous devez voir : Catane 4 75, puis trois lignes qui commencent par <class.

07

Exercice 3 : le prix de quatre adhésions

Vous devez voir : Total : 100, puis Demi-tarif : 12.5, puis <class 'float'>.

Pourquoi ? 25 est un int. Pourquoi 25 / 2 donne-t-il un float ?

Votre réponse :

08

Exercice 4 : l'âge dans un an

L'exercice 4 est la première conversion. On le fait en deux temps : d'abord sans conversion, pour voir l'erreur.

age = input("Votre âge : ")
print("Dans un an, vous aurez", age + 1, "ans")

Vous devez voir : Dans un an, vous aurez 18 ans.

09

Exercice 5 : les joueurs de deux tables

Vous devez voir : Joueurs en tout : 7 avec les conversions.

10

Exercice 6 : le prix de deux exemplaires

Vous devez voir : Deux exemplaires : 59.8.

Pourquoi ? Pourquoi int("29.90") refuse-t-il de convertir, alors que int("17") marche ?

Votre réponse :

11

Exercice 7 : répartir les joueurs en tables

Vous devez voir : 4 tables complètes, 1 joueur en attente.

POINT DE CONTRÔLE B

  • Montrez au formateur les exercices 2 à 7 qui tournent. Répondez à sa question sur l'un d'eux.
  • Le formateur a validé. Inversez les rôles, puis passez à la partie C.

PARTIE C — Comparer et mettre en forme

Étapes 12 à 17, environ 30 min. À la fin, les douze exercices tournent, et vous savez expliquer les trois conversions.

Besoin d'un rappel ? Revoir le cours : « Calculer, comparer, mettre en forme ».

12

Exercices 8 et 9 : comparer

Vous devez voir : True puis False pour l'exercice 8. Pour l'exercice 9, True, puis False avec les minuscules.

13

Expliquer les trois conversions

Revenez sur les exercices 4, 5 et 6. Pour chacun, expliquez ce qui s'est passé sans conversion.

Exercice Sans conversion, j'ai obtenu Pourquoi La conversion qui corrige
4 TypeError age est un texte. On ne peut pas ajouter le nombre 1 à un texte. int()
5
6

Vous devez avoir : trois résultats différents : une erreur, deux textes collés en 34, un texte répété.

14

Trouver dans la doc

Les exercices 11 et 12 imposent une mise en forme. L'annexe donne les codes à écrire après les deux-points, dans les accolades.

Vous devez avoir : trois codes courts, à écrire après les deux-points dans les accolades.

15

Exercice 10 : la fiche d'un jeu

Vous devez voir : Jeu : Catane | Joueurs : 3 à 4 | Durée : 75 min, au caractère près.

16

Exercice 11 : le demi-tarif

Vous devez voir : Demi-tarif adulte : 12.50 €, puis Demi-tarif jeune : 6.00 €.

17

Exercice 12 : le tableau des tarifs

Vous devez voir : trois lignes dont les prix sont alignés à droite, comme le gabarit de l'annexe .

Pourquoi ? Pourquoi une chaîne formatée est-elle plus sûre que "Total : " + total pour afficher un nombre ?

Votre réponse :

POINT DE CONTRÔLE C

  • Montrez au formateur votre grille de l'étape 13 et les exercices 10 à 12.
  • Le formateur a validé. Passez à la partie D.

PARTIE D — Trois pannes

Étapes 18 à 22, environ 30 min. À la fin, les trois programmes de Bruno marchent, et vous savez dire ce que voulait dire chaque message.

Besoin d'un rappel ? Revoir le cours : « Lire un message d'erreur ».

Les trois programmes sont dans le dossier pannes. Leur code est aussi dans l'annexe . Chacun contient une seule erreur, d'une nature différente.

18

Panne 1, faite avec vous

python pannes\panne1.py

Vous devez voir : un message qui finit par SyntaxError: '(' was never closed. Rien d'autre ne s'affiche, même pas Bonjour Léa.

Panne Type d'erreur Ligne La ligne fautive Ma correction
1 SyntaxError 4 print("Bienvenue à MaisonDesJeux !" ajouter la parenthèse fermante à la fin
2
3

Vous devez voir : Bonjour Léa, Bienvenue à MaisonDesJeux !, Bonne partie !.

19

Panne 2

Vous devez voir : Adhérents cette saison : 352.

20

Panne 3

Vous devez voir : Calcul du prix des adhésions..., puis Total à payer : 100 euros.

21

Dire ce que voulait dire chaque message

Panne Le message voulait dire
1 Une parenthèse ouverte à la ligne 4 n'a jamais été fermée.
2
3

Vous devez avoir : une phrase sans mot anglais pour chaque panne.

22

Syntaxe ou exécution ?

Vous devez avoir : une famille pour chacune des trois pannes, et deux familles différentes en tout.

Pourquoi ? La ligne 3 de la panne 1 était juste. Pourquoi n'a-t-elle pas affiché Bonjour Léa ?

Votre réponse :

POINT DE CONTRÔLE D

  • Montrez au formateur vos grilles des étapes 18 et 21, et les trois programmes qui tournent.
  • Le formateur a validé. Le labo est terminé.

POUR ALLER PLUS LOIN

10 à 15 min, si vous avez fini avant la fin de la séance.

Bruno a écrit une quatrième ligne pour Léa. Elle ne produit aucun message d'erreur, mais le résultat est faux.

moyenne = 25 + 12 / 2
print("Prix moyen :", moyenne)

CE QU'IL FAUT RETENIR

  1. Écrivez, enregistrez, lancez, lisez : à chaque modification, on refait les quatre gestes.
  2. input() rend du texte : convertissez avec int() ou float() avant de calculer.
  3. Un message d'erreur se lit par le bas : le type et le message, puis le fichier et la ligne.
Annexes

Tous les documents du module

Cliquez sur une annexe pour l'ouvrir dans le panneau de droite. Elle reste ouverte pendant que vous lisez.