Exercice 1 sur 8
AssociationAssocie chaque terme à sa définition.

Numérique et sciences informatiques (NSI) · Terminale
22 exercices avec correction détaillée, en 3 séries. Aucune inscription : ta progression reste sur ton appareil.

ULUMINE · Numérique et sciences informatiques (NSI) · Terminale
Feuille d’exercices
Prénom : ……………………………Date : ……………………Score : ……… / 8
Exécute mentalement chaque programme ligne par ligne, en suivant l’état de chaque objet.
Exercice 1 — Relie chaque élément de gauche à celui de droite.
Associe chaque terme à sa définition.
Exercice 2 — Coche la bonne réponse.
Quelle méthode est appelée automatiquement lors de l’instruction p = Point(2, 3) ?
Exercice 3
Qu’affiche ce programme ?
class Compteur:
def __init__(self):
self.valeur = 0
def incrementer(self):
self.valeur = self.valeur + 1
c = Compteur()
c.incrementer()
c.incrementer()
c.incrementer()
print(c.valeur)Écris tes calculs :
Réponse : ………………
Exercice 4 — Coche « Vrai » ou « Faux ».
Dans une méthode, le paramètre self désigne l’objet sur lequel la méthode est appelée.
VraiFaux
Exercice 5
Qu’affiche ce programme ?
class Rectangle:
def __init__(self, largeur, longueur):
self.largeur = largeur
self.longueur = longueur
def aire(self):
return self.largeur * self.longueur
r = Rectangle(3, 5)
r.largeur = 4
print(r.aire())Écris tes calculs :
Réponse : ………………
Exercice 6
Avec la classe Compteur de l’exercice 3, qu’affiche ce programme ?
a = Compteur()
b = a
b.incrementer()
a.incrementer()
print(a.valeur)Écris tes calculs :
Réponse : ………………
Exercice 7 — Complète les trous.
Complète avec le mot Python qui convient.
Le mot-clé permet de définir une classe. Le constructeur est la méthode . Son premier paramètre, qui désigne l’objet en cours de construction, s’appelle par convention .
Exercice 8
Écris une classe Eleve dont le constructeur reçoit un nom et crée une liste de notes vide, avec une méthode ajouter_note(note) et une méthode moyenne() qui renvoie la moyenne des notes (ou None s’il n’y en a aucune).
ulumine.com — exercices corrigés gratuits

ULUMINE · Numérique et sciences informatiques (NSI) · Terminale
Corrigé détaillé — pour les parents et les enseignants
Exercice 1
Réponse : 1 → D · 2 → A · 3 → B · 4 → C
La classe est le plan de construction ; chaque objet construit possède ses attributs (son état) et peut utiliser les méthodes de la classe (son comportement).
Exercice 2
Réponse : __init__
Point(2, 3) crée un nouvel objet puis appelle le constructeur __init__(self, 2, 3) pour initialiser ses attributs.
Exercice 3
Réponse : 3
L’attribut valeur vaut 0 à la création, puis chaque appel à incrementer l’augmente de 1 : 0 → 1 → 2 → 3.
Exercice 4
Réponse : Vrai
c.incrementer() est équivalent à Compteur.incrementer(c) : self reçoit l’objet c.
Exercice 5
Réponse : 20
L’attribut largeur est modifié après la création : il vaut 4. L’aire est calculée au moment de l’appel : 4 × 5 = 20.
Exercice 6
Réponse : 2
b = a ne crée pas de nouvel objet : a et b désignent le même compteur, incrémenté deux fois.
Exercice 7
Réponse : class · __init__ · self
On écrit class NomDeLaClasse: puis def __init__(self, …): pour le constructeur.
Exercice 8
Exemple de réponse : La classe a deux attributs : nom et notes (liste vide au départ). ajouter_note ajoute la note à la liste avec append. moyenne teste si la liste est vide ; sinon elle renvoie sum(self.notes) / len(self.notes).
Chaque objet Eleve a sa propre liste de notes, créée dans le constructeur.
class Eleve:
def __init__(self, nom):
self.nom = nom
self.notes = []
def ajouter_note(self, note):
self.notes.append(note)
def moyenne(self):
if len(self.notes) == 0:
return None
return sum(self.notes) / len(self.notes)Exécute mentalement chaque programme ligne par ligne, en suivant l’état de chaque objet.
Associe chaque terme à sa définition.
Quelle méthode est appelée automatiquement lors de l’instruction p = Point(2, 3) ?
Qu’affiche ce programme ?
class Compteur:
def __init__(self):
self.valeur = 0
def incrementer(self):
self.valeur = self.valeur + 1
c = Compteur()
c.incrementer()
c.incrementer()
c.incrementer()
print(c.valeur)Dans une méthode, le paramètre self désigne l’objet sur lequel la méthode est appelée.
Qu’affiche ce programme ?
class Rectangle:
def __init__(self, largeur, longueur):
self.largeur = largeur
self.longueur = longueur
def aire(self):
return self.largeur * self.longueur
r = Rectangle(3, 5)
r.largeur = 4
print(r.aire())Avec la classe Compteur de l’exercice 3, qu’affiche ce programme ?
a = Compteur()
b = a
b.incrementer()
a.incrementer()
print(a.valeur)Complète avec le mot Python qui convient.
Écris une classe Eleve dont le constructeur reçoit un nom et crée une liste de notes vide, avec une méthode ajouter_note(note) et une méthode moyenne() qui renvoie la moyenne des notes (ou None s’il n’y en a aucune).
Terminale · Numérique et sciences informatiques (NSI)
Fonctions récursives en Python : cas de base, appels récursifs, pile d’appels, terminaison et comparaison avec l’itératif. Cours et exercices de NSI Terminale.
Terminale · Numérique et sciences informatiques (NSI)
Interface et implémentation des structures linéaires : listes chaînées, piles (LIFO), files (FIFO) et dictionnaires en Python. Cours et exercices de NSI Terminale.
Terminale · Numérique et sciences informatiques (NSI)
Modules et API, paradigmes impératif, fonctionnel et objet, tests, erreurs et débogage, problème de l’arrêt : cours et exercices de NSI Terminale.