Ressources · 2ⁿᵈᵉ · Sciences numériques et technologie (SNT)
Programmation en Python
Variables et affectations, types, conditions, boucles bornées et non bornées, fonctions (SNT de 2nde)
À propos de cette page
Sujet et corrigé prêts à imprimer.
Devoir surveillé – Programmation en Python
Durée : 60 min – Sans document – Sur 20 points · Sciences numériques et technologie (SNT) 2ⁿᵈᵉ
Les réponses doivent être rédigées et justifiées. Soigne l'orthographe et la présentation.
Exercice 1 – Affectations et types
(4 pts)On exécute : x = 18, y = x / 2, x = x + y, z = str(x) + '1'.
- a)Donner la valeur et le type de y.
- c)Donner la valeur et le type de z.
- b)Donner la valeur et le type de x à la fin.
- d)Donner les valeurs de
27 // 4et de27 % 4.
Exercice 2 – Instructions conditionnelles
(4 pts)Un cinéma utilise :
def tarif(age):
if age < 14:
return 5.5
elif age < 26:
return 7.9
else:
return 11.2- a)Que renvoie
tarif(9)? - b)Que renvoie
tarif(14)? Justifier. - c)Que renvoie
tarif(26)? Justifier. - d)Réécrire la fonction pour ajouter un tarif de 8,4 € à partir de 65 ans, sans modifier les autres tarifs.
Exercice 3 – Boucle bornée
(4 pts)On considère :
p = 1
for i in range(1, 6):
p = p * i- a)Combien de tours effectue la boucle ?
- b)Donner les valeurs successives de p.
- c)Que calcule ce programme ?
- d)Modifier le programme pour calculer le produit des entiers de 1 à 9, et donner le résultat.
Exercice 4 – Boucle non bornée
(4 pts)Léo a 250 € et épargne 45 € par mois :
s = 250
m = 0
while s < 1000:
s = s + 45
m = m + 1- a)Pourquoi utilise-t-on une boucle while ?
- b)Que vaut m à la fin ? Justifier par un calcul.
- c)Que vaut s à la fin ?
- d)Un camarade écrit
while s != 1000:. Expliquer l'erreur.
Exercice 5 – Fonctions
(4 pts)- a)Écrire une fonction
vitesse(d, t)qui renvoie la vitesse moyenne pour une distance d parcourue en une durée t. - b)Que renvoie
vitesse(126, 1.5)? - c)Écrire une fonction
maximum(a, b)qui renvoie le plus grand des deux nombres. - d)Avec
def affiche_double(x): print(2 * x), expliquer pourquoir = affiche_double(3)donne à r la valeur None.
Bon courage !
Ce document est la propriété intellectuelle de Ben, professeur particulier (benprofparticulier.fr), protégée par le Code de la propriété intellectuelle (art. L. 111-1 et L. 122-4). Il est mis à disposition pour un usage personnel de révision. Toute reproduction, diffusion, mise en ligne ou revente, totale ou partielle, sans autorisation écrite est interdite et constitue une contrefaçon (art. L. 335-2).
Voir le corrigé et le barème
Corrigé et barème – Programmation en Python
Durée : 60 min – Sans document – Sur 20 points · Sciences numériques et technologie (SNT) 2ⁿᵈᵉ
Exercice 1 – Affectations et types
(4 pts)- a)y = 18 / 2 = 9.0 : type float (/ donne toujours un flottant). (1)
- b)x = 18 + 9.0 = 27.0 : type float. (1)
- c)str(27.0) = '27.0', donc z = '27.01' : type str. (1)
- d)27 = 4 × 6 + 3 : 27 // 4 = 6 et 27 % 4 = 3. (1)
Erreur fréquente — La division / produit un flottant même quand elle « tombe juste », et ce flottant se propage aux calculs suivants.
Exercice 2 – Instructions conditionnelles
(4 pts)- a)9 < 14 est vrai : la fonction renvoie 5.5. (1)
- b)14 < 14 est faux, 14 < 26 est vrai : 7.9. (1)
- c)26 < 14 et 26 < 26 sont faux : on exécute le else, 11.2. (1)
- d)On insère avant le else :
elif age >= 65: return 8.4; les cas 26 à 64 ans restent à 11.2 dans le else. (1)
À retenir — Avec des inégalités strictes, la valeur frontière bascule dans le cas suivant : il faut tester les bornes une par une.
Exercice 3 – Boucle bornée
(4 pts)- a)range(1, 6) donne 1, 2, 3, 4, 5 : 5 tours. (1)
- b)p vaut 1, 2, 6, 24, 120. (1)
- c)Le produit 1 × 2 × 3 × 4 × 5 = 120. (1)
- d)Remplacer par
range(1, 10)(10 exclu) : p = 362 880. (1)
Repère — Pour un produit, on initialise à 1 et non à 0, sinon le résultat reste nul.
Exercice 4 – Boucle non bornée
(4 pts)- a)On cherche le nombre de mois pour atteindre 1 000 € : il n'est pas connu à l'avance. (1)
- b)Il faut 250 + 45m ≥ 1000, soit m ≥ 750 / 45 ≈ 16,7 : m = 17. (1)
- c)s = 250 + 45 × 17 = 1 015. (1)
- d)750 / 45 n'est pas entier : s passe de 970 à 1 015 sans valoir 1 000, la boucle est infinie. (1)
Attention — Une condition d'arrêt fondée sur une égalité exacte risque de n'être jamais atteinte : on préfère une inégalité.
Exercice 5 – Fonctions
(4 pts)- a)
def vitesse(d, t): return d / t(1) - b)126 / 1,5 = 84 : la fonction renvoie 84.0. (1)
- c)
def maximum(a, b):puisif a >= b: return a, sinonreturn b. (1) - d)La fonction affiche 6 mais n'a pas de return : elle renvoie None, qui est affecté à r. (1)
Le point clé — print montre un résultat à l'écran, seul return le transmet au programme.
Ce document est la propriété intellectuelle de Ben, professeur particulier (benprofparticulier.fr), protégée par le Code de la propriété intellectuelle (art. L. 111-1 et L. 122-4). Il est mis à disposition pour un usage personnel de révision. Toute reproduction, diffusion, mise en ligne ou revente, totale ou partielle, sans autorisation écrite est interdite et constitue une contrefaçon (art. L. 335-2).
Ce contrôle de sciences numériques et technologie (SNT) 2ⁿᵈᵉ en bref
Un devoir surveillé type contrôle en classe sur « Programmation en Python » : 5 exercices, 60 minutes, noté sur 20. Le sujet et le corrigé sont téléchargeables en PDF, prêts à imprimer, pour travailler comme en classe.
- Exercice 1 — Affectations et types/ 4 pts
- Exercice 2 — Instructions conditionnelles/ 4 pts
- Exercice 3 — Boucle bornée/ 4 pts
- Exercice 4 — Boucle non bornée/ 4 pts
- Exercice 5 — Fonctions/ 4 pts
Notions évaluées
L'essentiel : variables, affectations, types, Opérations, conversions et saisie, Instructions conditionnelles, Boucles bornées et non bornées, Fonctions, Méthodes.
Pour préparer ce contrôle
- Relire le cours.
- Refaire les exercices corrigés.
- Se tester avec le QCM (24 questions).
- Faire ce sujet en conditions réelles — 60 min, sans le cours — puis se corriger et noter les points à revoir.
Voir tous les contrôles de sciences numériques et technologie (SNT) 2ⁿᵈᵉ · tous les devoirs surveillés corrigés
Questions fréquentes sur ce sujet
- Combien de temps dure ce contrôle sur « Programmation en Python » ?
- 60 minutes pour 5 exercices notés sur 20. Prévois le double si tu enchaînes avec la correction.
- Le corrigé est-il fourni ?
- Oui : le corrigé complet est fourni en PDF (bouton « Télécharger le corrigé »), avec le barème exercice par exercice.
- Ce sujet peut-il servir de DS, de contrôle ou d'interrogation ?
- Oui : c'est un devoir surveillé complet de 60 minutes. Pour une interrogation courte, garde un ou deux exercices ; pour un DS ou un contrôle de fin de chapitre, fais le sujet entier en temps limité.
- Ce sujet suit-il le programme de sciences numériques et technologie (SNT) de seconde ?
- Oui : il évalue uniquement les notions du chapitre « Programmation en Python » du programme officiel de sciences numériques et technologie (SNT) en seconde, soit L'essentiel : variables, affectations, types, Opérations, conversions et saisie, Instructions conditionnelles, Boucles bornées et non bornées.
Moi c'est Ben, j'ai créé ce site pour aider le plus d'élèves possible, partout en France. Je peux aussi reprendre avec toi ce qui coince en cours particulier : en visio, ou à domicile si tu es à Marseille.
Soutien scolaire à Marseille · Cours particuliers au lycée · Aide aux devoirs