Exercice 1 sur 9
CalculQu’affiche ce programme ?
def carre(x):
return x * x
print(carre(3) + 1)
Numérique et sciences informatiques (NSI) · Première
23 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) · Première
Feuille d’exercices
Prénom : ……………………………Date : ……………………Score : ……… / 9
Lire des fonctions, prévoir leur résultat et réfléchir aux tests.
Exercice 1
Qu’affiche ce programme ?
def carre(x):
return x * x
print(carre(3) + 1)Écris tes calculs :
Réponse : ………………
Exercice 2 — Coche la bonne réponse.
Que vaut la variable r après l’exécution de ce programme ?
def double(x):
print(2 * x)
r = double(4)Exercice 3 — Coche « Vrai » ou « Faux ».
Une variable affectée à l’intérieur d’une fonction est utilisable dans le programme principal après l’appel.
VraiFaux
Exercice 4 — Complète les trous.
Complète le vocabulaire de la spécification.
Une décrit ce qui doit être vrai avant l’appel de la fonction ; une décrit ce qui est garanti sur le résultat.
Exercice 5 — Coche la bonne réponse.
Que se passe-t-il quand Python exécute assert x > 0 alors que x vaut −2 ?
Exercice 6
Que renvoie l’appel puissance(3) ?
def puissance(a, n=2):
p = 1
for i in range(n):
p = p * a
return pÉcris tes calculs :
Réponse : ………………
Exercice 7 — Coche la bonne réponse.
Pour tester une fonction maximum(L) qui renvoie le plus grand élément d’une liste non vide, quel test vise un cas limite ?
Exercice 8
Que renvoie somme_chiffres(4072) ?
def somme_chiffres(n):
s = 0
while n > 0:
s = s + n % 10
n = n // 10
return sÉcris tes calculs :
Réponse : ………………
Exercice 9 — Relie chaque élément de gauche à celui de droite.
Associe chaque instruction à son effet.
ulumine.com — exercices corrigés gratuits

ULUMINE · Numérique et sciences informatiques (NSI) · Première
Corrigé détaillé — pour les parents et les enseignants
Exercice 1
Réponse : 10
carre(3) renvoie 9, puis on ajoute 1 : le programme affiche 10.
Exercice 2
Réponse : None
La fonction affiche 8 mais ne contient pas de return : elle renvoie None, qui est affecté à r.
Exercice 3
Réponse : Faux
Elle est locale : elle disparaît à la fin de l’exécution de la fonction. Pour transmettre une valeur, on utilise return.
Exercice 4
Réponse : précondition · postcondition
Préconditions sur les arguments, postconditions sur le résultat : elles forment, avec le prototype, la spécification de la fonction.
Exercice 5
Réponse : Le programme s’arrête avec une erreur AssertionError
La condition est fausse : assert lève une erreur AssertionError, qui arrête le programme (sauf si elle est gérée).
Exercice 6
Réponse : 9
Le paramètre n n’est pas fourni : il prend sa valeur par défaut 2. On calcule 3 × 3 = 9.
Exercice 7
Réponse : maximum([5])
Une liste à un seul élément est un cas limite (la plus petite liste autorisée par la précondition). Les autres tests sont des cas généraux.
Exercice 8
Réponse : 13
n % 10 donne le chiffre des unités et n // 10 le supprime.
Exercice 9
Réponse : 1 → B · 2 → C · 3 → A · 4 → D
import charge un module ; from … import … importe un nom précis ; help affiche la docstring ; randint inclut ses deux bornes.
Lire des fonctions, prévoir leur résultat et réfléchir aux tests.
Qu’affiche ce programme ?
def carre(x):
return x * x
print(carre(3) + 1)Que vaut la variable r après l’exécution de ce programme ?
def double(x):
print(2 * x)
r = double(4)Une variable affectée à l’intérieur d’une fonction est utilisable dans le programme principal après l’appel.
Complète le vocabulaire de la spécification.
Que se passe-t-il quand Python exécute assert x > 0 alors que x vaut −2 ?
Que renvoie l’appel puissance(3) ?
def puissance(a, n=2):
p = 1
for i in range(n):
p = p * a
return pPour tester une fonction maximum(L) qui renvoie le plus grand élément d’une liste non vide, quel test vise un cas limite ?
Que renvoie somme_chiffres(4072) ?
def somme_chiffres(n):
s = 0
while n > 0:
s = s + n % 10
n = n // 10
return sAssocie chaque instruction à son effet.
Première · Numérique et sciences informatiques (NSI)
Écrire un entier en base 2 et en base 16, passer d’une base à l’autre, coder les entiers relatifs en complément à deux : cours et exercices de NSI en Première.
Première · Numérique et sciences informatiques (NSI)
Valeurs booléennes, opérateurs and, or, not et ou exclusif, tables de vérité et évaluation paresseuse en Python : cours et exercices corrigés de NSI en Première.
Première · Numérique et sciences informatiques (NSI)
Pourquoi les flottants sont approchés, nombres à virgule en binaire, encodages ASCII, ISO-8859-1, Unicode et UTF-8 : cours et exercices de NSI en Première.