[latex]
Bac General
Classe : Terminale
Centre d’examen : Centres Etrangers Afrique
Matiere : NSI
Annee : 2026
Session : Normale
Duree de l’epreuve : 3 heures 30
Repere de l’epreuve : 26-NSIJ1G11
Calculatrice : non autorisee
Exercice 1 (6 points)
Algorithmes de tri, parcours d’arbre binaire de recherche et programmation orientee objet
Contexte : Competition d’athletisme inter-scolaire avec quatre disciplines (100m, saut en longueur, lancer du poids, 1500m). Calcul de scores et classement des athletes.
Partie A : Dictionnaire et tri
– Calcul du score total d’un athlete
– Completion de la fonction nb_points pour calculer les points par epreuve
– Completion de la fonction score pour calculer le score total
– Completion de la fonction classer implementant un tri par selection
– Analyse du cout algorithmique
Partie B : Arbre binaire de recherche
– Creation de la classe Athlete avec programmation orientee objet
– Implementation de la methode calculer_score
– Insertion d’athletes dans un arbre binaire de recherche
– Completion de la classe Noeud et de la methode inserer
– Parcours infixe inverse pour classer les athletes
– Comparaison des deux approches (dictionnaires/tri vs arbre binaire)
Exercice 2 (6 points)
Chiffrement de Polybe et securisation des communications
– Dechiffrement de messages
– Construction de grilles avec cles
– Implementation des fonctions generer_ordre, grille_vide, generer_grille
– Creation d’un dictionnaire pour optimiser le chiffrement
– Difference entre chiffrement symmetrique et asymetrique
Exercice 3 (8 points)
Jeu du demineur – Programmation orientee objet, recursivite et bases de donnees
Partie A : Classe Demineur
– Creation du constructeur avec assertions
– Implementation de grilles pour differents niveaux
Partie B : Creation de la grille
– Generation d’une grille vide
– Placement aleatoire des mines
– Calcul du nombre de mines voisines
Partie C : Interface utilisateur
– Gestion de la visibilite des cases
– Implementation recursive pour devoiler les cases
Partie D : Base de donnees relationnelles
– Tables Joueur, Meilleur_score, Demineur
– Requetes SQL (SELECT, JOIN, WHERE, UPDATE)
– Identification des cles etrangeres
– Mise a jour et correction de la base
