[latex]
Bac General
Classe : Terminale
Centre d’examen : Asie
Matiere : NSI
Annee : 2026
Session : Normale
Duree de l’epreuve : 3 heures 30
Repere de l’epreuve : 26-NSIJ2JA1
Calculatrice : non autorisée
Exercice 1 (6 points)
Programmation orientée objet et structures linéaires – Le jeu du taquin
– Représentation d’une grille 3×3 avec cases numérotées de 1 à 8 et une case vide
– Implémentation d’une classe Taquin pour modéliser le jeu
– Méthodes : est_gagnant, indice, jouer, melanger
– Mode résolution automatique utilisant une pile pour mémoriser et rejouer les coups
– Optimisation pour éviter de stocker deux fois le même coup
Exercice 2 (6 points)
Bases de données et graphes
Partie A : Bases de données
– Tables : personne (id_pers, pseudo_pers, date_pers) et participation (id_partie, id_pers, nb_point)
– Requêtes SQL : insertion, sélection, suppression
– Clés primaires et clés étrangères
Partie B : Graphes et tri topologique
– Jeu de classement de mots avec alphabet de 6 voyelles (a, e, i, o, u, y)
– Ordre lexicographique personnalisé
– Fonctions : indice, comparer, premiere_diff
– Construction d’un graphe orienté à partir de couples de mots
– Fonction dico_adj pour créer les listes d’adjacence
– Parcours en profondeur du graphe
– Fonction trier pour obtenir un ordre compatible (tri topologique)
Exercice 3 (8 points)
Programmation Python et routage RIP
Partie A : Gestion des déplacements du robot
– Instructions : A (avancer), D (tourner à droite), G (tourner à gauche)
– Répétitions avec entiers et parenthèses (ex: ‘3(AD)’)
– Validation de chaînes : caracteres_valides, entiers_valides, parenthesage_correct
– Fonctions : lire_nombre, lire_bloc
– Fonction récursive lire_parcours pour exécuter les mouvements
Partie B : Communication et routage
– Réseau de robots représenté par un graphe
– Protocole RIP (Routing Information Protocol)
– Tables de routage avec colonnes : destination, prochain robot, distance
– Mise à jour des tables lors de changements de topologie
Partie C : Programmation du routage
– Classe Module_comm avec attributs identifiant et table_routage
– Structure de table_routage : dictionnaire de dictionnaires
– Méthodes : ajouter_voisin, nombre_sauts, voisins, communiquer_extrait_table
– Gestion du nombre maximum de sauts (15)
