Tous les sujets, pour votre succès

Spécialité NSI Métropole Candidat libre Jour 1 Bac Général Session 2021

Accueil » Spécialité NSI Bac Général » NSI Bac Général Session 2021 » Spécialité NSI Métropole Candidat libre Jour 1 Bac Général Session 2021
\[\]

Bac Général
Classe : 
Terminale
Centre d’examen :
 Métropole Candidat libre
Matière : Numérique et Sciences Informatiques
Année : 2021
Session : Normale
Durée de l’épreuve : 3 heures 30
Repère de l’épreuve : 21–NSIJ1ME2
L’usage de la calculatrice n’est pas autorisé.

Le candidat traite au choix 3 exercices parmi les 5 exercices proposés
Chaque exercice est noté sur 4 points.

Exercice 1 (4 points)
Cet exercice porte sur les bases de données.
Dans cet exercice, on pourra utiliser les mots clés suivants du langage SQL :
SELECT, FROM, WHERE, JOIN, ON, INSERT INTO, VALUES, MIN, MAX, OR, AND.
Les fonctions d’agrégation MIN(propriete) et MAX(propriete) renvoient, respectivement, la plus petite et la plus grande valeur de l’attribut propriete pour les enregistrements sélectionnés.
Des acteurs ayant joué dans différentes pièces de théâtre sont recensés dans une base de données Theatre dont le schéma relationnel est donné ci-dessous :
• Piece (idPiece, titre, langue)
• Acteur (idActeur, nom, prenom, anneeNaiss)
• Role (#idPiece, #idActeur, nomRole)

Exercice 2 (4 points)
Cet exercice traite des notions de piles et de programmation orientée objet.
On crée une classe Pile qui modélise la structure d’une pile d’entiers.
Le constructeur de la classe initialise une pile vide.
La définition de cette classe sans l’implémentation de ses méthodes est donnée ci-dessous.

Exercice 3 (4 points)
Cet exercice porte sur la gestion des processus par un système d’exploitation et les protocoles de routage.
Les parties A et B sont indépendantes.
Partie A : Processus
La commande UNIX ps présente un cliché instantané des processus en cours
d’exécution.
Avec l’option −eo pid,ppid,stat,command, cette commande affiche dans l’ordre l’identifiant du processus PID (process identifier), le PPID (parent process identifier), l’état STAT et le nom de la commande à l’origine du processus.
Les valeurs du champ STAT indique l’état des processus :
R : processus en cours d’exécution
S : processus endormi

Exercice 4 (4 points)
Cet exercice porte sur l’algorithmique et la programmation en Python. Il aborde les notions de tableaux de tableaux et d’algorithmes de parcours de tableaux.
Partie A : Représentation d’un labyrinthe
On modélise un labyrinthe par un tableau à deux dimensions à n lignes et m colonnes avec n et m des entiers strictement positifs.
Les lignes sont numérotées de 0 à n – 1 et les colonnes de 0 à m – 1.
La case en haut à gauche est repérée par (0,0) et la case en bas à droite par (n – 1 , m – 1).

Exercice 5 (4 points)
Cet exercice traite de manipulation de tableaux, de récursivité et du paradigme « diviser pour régner ».
Dans un tableau Python d’entiers tab, on dit que le couple d’indices (i,j) forme une inversion lorsque i<j et tab[i] > tab[j]. On donne ci-dessous quelques exemples.
•Dans le tableau [1, 5, 3, 7], le couple d’indices (1,2) forme une inversion car 5> 3.
Par contre, le couple (1,3) ne forme pas d’inversion car 5<7.
Il n’y a qu’une inversion dans ce tableau.
•Il y a trois inversions dans le tableau [1, 6, 2, 7, 3], à savoir les couples d’indices (1, 2), (1, 4) et (3, 4).
•On peut compter six inversions dans le tableau [7, 6, 5, 3] : les couples d’indices (0, 1), (0, 2), (0, 3), (1, 2), (1, 3) et (2, 3).

On se propose dans cet exercice de déterminer le nombre d’inversions dans un tableau quelconque.