Retour
2024
2024 Asie Jour 1
Session 2024
Durée : 3h30
3 Exercices
"Sujet officiel."
EXERCICE 1 : (6 points)
Thème : NSI6 points
(6 points) Cet exercice porte sur la programmation Python, la programmation orientée objet et l’algorithmique. Une entreprise doit placer des antennes relais le long d’une rue rectiligne. Une antenne relais de portée (ou rayon) 𝑝𝑝 couvre toutes les maisons qui sont à une distance inférieure ou égale à 𝑝𝑝 de l’antenne. Connaissant les positions des maisons dans la rue, l’objectif est de placer les antennes le long de la rue, pour que toutes les maisons soient couvertes, tout en en minimisant le nombre d’antennes utilisées. La rue est représentée par un axe, et les maisons sont représentées des points sur cet axe : Figure 1. Deux maisons sur une rue, repérée par leur abscisse : 1 et 3,5 Les entités manipulées sont modélisées en utilisant la programmation orientée objet. class Maison: def __init__(self, position): self._position = position def get_pos_maison(self): return self._position class Antenne: def __init__(self, position, rayon): self._position = position self._rayon = rayon def get_pos_antenne(self): return self._position def get_rayon(self): return self._rayon
1
Voir le sujet complet pour les détails.
EXERCICE 2 : (6 points)
Thème : NSI6 points
(6 points) Cet exercice porte sur les graphes, la programmation, la structure de pile et l’algorithmique des graphes. On s’intéresse à la fabrication de pain. La recette est fournie sous la forme de tâches à réaliser. Cette recette est réalisée par une personne seule. (a) Préparer 500g de farine. (b) Préparer 1/3 de litre d’eau (33cl). (c) Préparer 1 c. à café de sel. (d) Préparer 20g de levure de boulanger. (e) Faire tiédir l’eau dans une casserole. (f) Délayer la levure dans l’eau tiède. (g) Laisser reposer la levure 5 minutes. (h) Préparer un grand saladier. (i) Verser la farine dans le saladier. (j) Verser le sel dans le saladier. (k) Mélanger la farine et le sel puis creuser un puits. (l) Verser l’eau mélangée à la levure dans le puits. (m) Pétrir jusqu’à obtenir une pâte homogène. (n) Couvrir à l’aide d’un linge humide et laisser fermenter au moins 1h30. (o) Disposer dans le fond du four un petit récipient contenant de l’eau. (p) Préchauffer un four à 200 degrés Celsius. (q) Fariner un plan de travail. (r) Verser la pâte à pain sur le plan de travail. (s) Pétrir rapidement la pâte à pain. (t) Disposer la pâte dans un moule à cake. (u) Mettre au four pour 15 à 20 minutes, arrêter le four et sortir le pain. La figure 1 représente les différentes tâches et les dépendances entre ces tâches sous la forme d’un graphe. Chaque sommet du graphe représente une tâche à réaliser. Les dépendances entre les tâches sont représentées par les arcs entre les sommets. Par exemple, il y a une flèche sur l’arc qui part du sommet d’étiquette (l) et qui atteint le sommet d’étiquette (m) car il faut avoir réalisé la tâche “Verser l’eau mélangée à la levure dans le puits.” (l) avant de pouvoir réaliser la tâche “Pétrir jusqu’à obtenir une pâte homogène.” (m). 24-NSIJ1JA1 Page : 7 / 14 Figure 1. Recette du pain : tâches à effectuer avec leurs dépendances
1
Voir le sujet complet pour les détails.
EXERCICE 3 : (8 points)
Thème : NSI8 points
(8 points) Cet exercice porte sur la programmation Python, la programmation orientée objet, les bases de données relationnelles et les requêtes SQL. Partie A Une entreprise, présente sur différents sites en France, attribue à chacun de ses employés un numéro de badge unique. Dans le tableau ci-dessous, on donne le numéro de badge, le nom, le prénom et les années de naissance et d’entrée dans l’entreprise de quelques salariés. numéro badge nom prénom année de naissance année d’entrée 112 LESIEUR Isabelle 1982 2005 2122 VASSEUR Adrien 1962 1980 135 HADJI Hakim 1992 2015 Pour chaque personne, on souhaite stocker les informations dans un objet de la classe Personne définie ci-dessous : 1 class Personne(): 2 def __init__(self, num, n , p , a_naiss, a_entree): 3 self.num_badge = num 4 self.nom = n 5 self.prenom = p 6 self.annee_naissance = a_naiss 7 self.annee_entree = a_entree
1
Voir le sujet complet pour les détails.