Epreuve E3C : spécialité Numérique et Sciences Informatiques (NSI)
Voie : Bac général
Niveau d’études : Classe de première
Session : 2025
Durée de l’épreuve : 2 heures
Calculatrice : Interdite
Dictionnaire : Interdit
Numéro du sujet : Sujet 47 – SPENSI47
Extrait de l’annale :
Thème A : types de base
Question A 1
Quelle est la valeur de x à la fin de l’exécution du script Python suivant ?
x = 1
for i in range(10):
x = x * 2
Réponses
A 2
B 1024
C 2048
D 20000000000
Thème B : types construits
Question B 1
Si on tape dans la console d’éxécution la commande :
[1,4,3] + [2,4,5]
qu’obtient-on ?
Réponses
A [3, 8, 8]
B [19]
C [1, 4, 3, 2, 4, 5]
D un message d’erreur car l’addition n’est pas compatible avec les listes
Thème C : traitement de données en tables
Question C 1
On considère des dictionnaires comme
{ ‘nom’: ‘Jérôme’, ‘NSI’: 16.2, ‘maths’: 11.4, ‘physique’: 13.0 }
pour retenir les notes d’un élève.
On définit :
def somme(notes):
return notes[‘NSI’] + notes[‘maths’] + notes[‘physique’]
def plusPetit(n1, n2):
if n1[‘NSI’] < n2[‘NSI’]:
return True
if n1[‘NSI’] == n2[‘NSI’]:
if somme(n1) < somme(n2):
return True
elif somme(n1) == somme(n2) and n1[‘nom’] < n2[‘nom’]:
return True
return False
pour définir un ordre croissant sur ces dictionnaires.
Ranger dans l’ordre croissant les dictionnaires suivants :
n1 = { ‘nom’: « Albert », ‘NSI’: 12.3, ‘maths’: 14.0, ‘physique’: 8.7 }
n2 = { ‘nom’: « Béatrice », ‘NSI’: 12.3, ‘maths’: 11.0, ‘physique’: 12.5 }
n3 = { ‘nom’: « Colin », ‘NSI’: 12.3, ‘maths’: 7.0, ‘physique’: 15.7 }
n4 = { ‘nom’: « Daniel », ‘NSI’: 13.4, ‘maths’: 9.0, ‘physique’: 5.2 }
n5 = { ‘nom’: « Emilie », ‘NSI’: 16.1, ‘maths’: 5.3, ‘physique’: 14.4 }