méthode par scénarios · Informatique
Les 62 scénarios de l’épreuve de sciences de l’informatique (section Math)
Chaque exercice du bac déroule une trajectoire logique récurrente. Reconnaître le scénario aide à choisir une démarche : idée directrice, exercice modèle corrigé, automatismes et pièges pour chacun.
chapitres
8
scénarios
62
SD
Structures de données et modularité
15 scénariosSD-ATraitement de tableaux — max/min, occurrences, décalage
L'énoncé donne un tableau d'entiers et demande d'écrire des sous-programmes classiques : trouver le maximum/minimum et son indice, compter les occurrences d'une valeur, ou effectuer un décalage circulaire.
Signature : « Écrire une fonction qui retourne le maximum d'un tableau » ; « Écrire une fonction qui compte le nombre d'occurrences de … dans un tableau » ; « Écrire une procédure qui effectue un décalage circulaire » ; « Donner le contenu du tableau après … »
SD-BTraitement de chaînes de caractères — palindrome, sous-chaîne, occurrences
L'énoncé donne une chaîne de caractères et demande d'en extraire des informations (longueur, caractère à un indice, sous-chaîne) ou de la transformer (inverser, vérifier palindrome, compter les occurrences d'un caractère).
Signature : « Écrire une fonction qui vérifie si une chaîne est un palindrome » ; « Écrire une fonction qui inverse une chaîne de caractères » ; « Écrire une fonction qui compte le nombre d'occurrences d'un caractère dans une chaîne » ; « Écrire une fonction qui recherche une sous-chaîne dans une chaîne »
SD-CSous-programmes — fonctions, procédures, passage de paramètres, portée
L'énoncé donne un programme décomposé en sous-programmes et demande de distinguer fonctions (retournent une valeur) et procédures (modifient via paramètres), d'identifier le mode de passage (par valeur vs par adresse/référence), et de…
Signature : « Expliquer la différence entre un passage de paramètre par valeur et par adresse » ; « Donner la valeur des variables après l'appel de la procédure … » ; « Identifier les variables locales et globales du programme » ; « Que faut-il modifier pour que la procédure … fonctionne correctement ? »
SD-EProblème modulaire — club de lecture (tableaux de chaînes, inactifs, recherche)
Forme calquée sur le problème 2018 (session principale) : un contexte applicatif (groupe / club), deux tableaux de chaînes liés par un indice d'émetteur, contrôles de saisie, puis affichages dépendants (inactifs + recherche d'un…
Signature : « Analyser le problème en le décomposant en modules » ; « Écrire les algorithmes et les tableaux de déclaration (TDNT/TDOG/TDOL) » ; « contrôles de saisie » ; « tableaux de chaînes »
SD-FProblème modulaire — cartes d'accès (IDENT / DATE / CODE)
Forme calquée sur le problème 2019 (session principale) : automatisation d'accès par cartes, trois tableaux de chaînes parallèles (identifiants, dates, codes), contrôles de saisie stricts, module de codage dépendant des dates…
Signature : « Analyser le problème en le décomposant en modules » ; « tableaux IDENT, DATE, CODE » ; « contrôles de saisie » ; « TDNT / TDOG / TDOL »
SD-GProcédures, paramètres et rôles — lecture d'algorithmes
Lire un programme modulaire : distinguer variables globales/locales, paramètres formels/effectifs, passage par valeur ou par référence (
@), et déduire le rôle d'une procédure à partir de sa trace sur un tableau.Signature : « Paramètres passés par référence »
SD-HRecherche séquentielle dans un tableau : indice trouvé ou -1, TDNT et exploration par les deux bouts
Deuxième exercice de l'épreuve (session principale 2024) : un module de recherche séquentielle est donné tout fait, et l'énoncé fait travailler autour de lui.
Signature : « Compléter le tableau ci-dessous par la déclaration du nouveau type correspondant au tableau T » ; « Ecrire, en utilisant la boucle Tant que, l'équivalent de la séquence d'instructions » ; « retourne l'indice de la case contenant le réel a s'il existe dans T ou la valeur -1 dans le cas contraire » ; « on explore, simultanément, les éléments des deux côtés du tableau en se déplaçant vers le centre »
SD-IProblème modulaire : deux tableaux parallèles, cumul pondéré et affichage de tous les ex æquo
Ce problème de traitement de tableaux parallèles : deux tableaux de même longueur liés par l'indice, l'un portant des libellés, l'autre un cumul chiffré.
Signature : « Ecrire un algorithme du programme principal, solution à ce problème, en le décomposant en modules » ; « TS[i] est le total des points cumulés du joueur ayant pour nom TJ[i] » ; « d'afficher le score MVP de la saison, ainsi que le nom de chaque joueur ayant ce score » ; « composés uniquement de lettres alphabétiques et d'espaces »
SD-JFonction donnée : type du résultat, T.D.O.L, appels, rôle, puis réutilisation obligatoire dans un nouveau module
L'exercice court le plus régulier de l'épreuve commune : on donne l'algorithme d'une fonction (Quoi, Inconnue…) dont l'en-tête est incomplet.
Signature : « Déterminer le type de résultat retourné par la fonction » ; « Compléter le tableau de déclaration des objets locaux de la fonction » ; « Donner le résultat de chacun des appels » ; « Déduire le rôle de la fonction » ; « Le module … doit faire appel à la fonction » ; « en employant impérativement la fonction »
SD-KProblème modulaire forme 2025–2026 : tableau aléatoire, séquences d'éléments adjacents vérifiant une propriété, code par concaténation recommencé jusqu'à une longueur minimale
Le problème final de l'épreuve commune (10 à 13 points) a changé de forme dans les deux dernières sessions : les données ne sont plus saisies mais générées aléatoirement, une propriété définie par l'énoncé sélectionne des éléments, on…
Signature : « Écrire un algorithme du programme principal, solution à ce problème, en le décomposant en modules » ; « Générer aléatoirement un tableau » ; « Une séquence se compose d'au moins deux … adjacents » ; « Répéter les étapes de 2 à 5 jusqu'à obtenir un code »
SD-LSimulation aléatoire : traduire un intervalle ou un tirage en appel à Aléa, puis l'intégrer à un remplissage ou à un tirage d'indice
Toute simulation de hasard de l'épreuve se ramène à une question : quel intervalle d'entiers veut-on, bornes comprises ?
Signature : « qui permet de générer automatiquement un nombre aléatoire entre » ; « L'instruction qui permet d'affecter à une variable X une valeur aléatoire de l'intervalle » ; « On se propose de générer aléatoirement un entier » ; « Générer aléatoirement un tableau » ; « au hasard »
SD-MTransformer une chaîne selon une règle décrite par l'exemple : résultats pour deux entrées, algorithme à saisie contrôlée, tableau de déclaration, version sans boucle
Le bac décrit une règle nouvelle sur les chaînes à l'aide de deux exemples — translation d'ordre n en 2021, insertion à une position en 2017 — puis demande toujours la même suite : appliquer la règle à la main sur deux entrées, dont l'une…
Signature : « consiste à déplacer les n derniers caractères de la chaîne vers son début » ; « donner le résultat de la translation d'ordre » ; « Lire une chaîne ch non vide de 10 caractères au maximum » ; « Dresser le tableau de déclaration des objets utilisés dans l'algorithme » ; « Le texte ne doit pas comporter des espaces successifs »
SD-NFonctions prédéfinies : remplacer chaque séquence par un appel équivalent, écrire l'instruction qui donne une valeur finale
Le bac donne une séquence écrite avec une boucle, ou une valeur finale à obtenir, et demande l'appel d'une fonction prédéfinie qui produit exactement le même résultat.
Signature : « Compléter la deuxième colonne du tableau ci-après par l'appel d'une fonction prédéfinie » ; « Chaque instruction d'appel doit retourner le même résultat décrit par la séquence algorithmique correspondante » ; « une expression équivalente utilisant un ou plusieurs modules prédéfinis » ; « Compléter la colonne Instruction à exécuter … permettant d'aboutir aux valeurs finales indiquées » ; « Écrire une séquence algorithmique équivalente … sans utiliser une structure itérative »
SD-OÉpreuve pratique (préparation) : relier une interface QtDesigner à un module Python — cryptage d'une chaîne par décalage
Scénario de préparation à l'épreuve pratique : l'écrit national ne le pose jamais. Les séries de lycée enchaînent une partie théorique — l'algorithme d'un module, ici le cryptage d'une chaîne — et une partie pratique sur machine…
Signature : « Réaliser l'interface graphique suivante (sous QtDesigner) » ; « enregistrer-le sous le nom … .ui » ; « appeler l'interface graphique en exploitant l'annexe » ; « afficher le message … via le label » ; « Partie 1 : théorique » / « Partie 2 : pratique »
SD-PAlgorithme ↔ Python : traduire une instruction, donner son résultat et son type (chaînes, conversions, aléa) — préparation à l'épreuve pratique
Préparation à l'épreuve pratique, pas une question de l'écrit national. Les devoirs et séries de terminale demandent de passer d'une instruction algorithmique à son équivalent Python, d'en donner le résultat et le type (entier…
Signature : « Implémenter les expressions algorithmiques en Python et les évaluer » ; « Instruction en algorithme / Instruction en Python / Résultat / Type » ; « mettre une croix devant la ou les bonnes réponses » ; « Implémenter cet algorithme en Python »
RV
Récursivité
3 scénariosRV-ARécursivité — factorielle, PGCD, Fibonacci
L'énoncé demande d'écrire la version récursive d'une fonction classique (factorielle, PGCD, Fibonacci), de donner sa trace d'exécution sous forme d'arbre d'appels, puis souvent de comparer avec la version itérative.
Signature : « Écrire la version récursive de la fonction factorielle » ; « Donner la trace d'exécution de l'appel récursif … » ; « Écrire la fonction récursive PGCD(a,b) » ; « Écrire la fonction récursive calculant le n-ième terme de Fibonacci »
RV-BRécursivité d'ordre 1 sur une chaîne — décrire la récurrence, puis la programmer
Ici la récursivité ne porte pas sur un nombre mais sur une chaîne. Le schéma d'écriture ne change pas — un cas d'arrêt, un seul appel récursif —, mais trois questions se posent autrement : quelle grandeur décroît (la longueur, pas…
Signature : « Est un problème récurrent d'ordre 1 » ; « Peut être traité d'une façon récursive » ; « Quel est l'ordre de récurrence de cette formule ? » ; « Proposer une fonction récursive … » (devoirs locaux de 4e SI, non des épreuves nationales)
RV-CFonction récursive inconnue : type de retour, condition d’arrêt, trace des appels, rôle, version itérative
L’épreuve d’algorithmique de la section Sciences de l’informatique donne parfois une fonction récursive dont on tait le rôle (Inconnue, Quoi…) — les deux sessions 2026 l’ont posée en exercice 1 : on la lit, on ne l’écrit pas.
Signature : « Soit l’algorithme de la fonction Inconnue suivant » ; « Donner le type de retour de la fonction » ; « La condition d’arrêt du traitement récursif est » ; « Déterminer la valeur retournée par la fonction … pour chacun des … appels suivants » ; « Donner la trace d’exécution de la fonction » ; « En déduire le rôle de la fonction » ; « Ecrire cette fonction avec une version itérative »
TS
Algorithmes de tri
4 scénariosTS-AAlgorithmes de tri — sélection, insertion, bulles
L'énoncé présente un tableau non trié et demande d'écrire un ou plusieurs algorithmes de tri (sélection, insertion ou bulles), puis de donner la trace d'exécution état par état.
Signature : « Écrire l'algorithme du tri par sélection » ; « Donner l'état du tableau après chaque passe du tri à bulles » ; « Combien d'échanges sont effectués lors du tri … » ; « Comparer la complexité du tri par sélection et du tri à bulles »
TS-BTri à bulles optimisé — drapeau d'échange
Le tri à bulles optimisé parcourt le tableau en échangeant les paires désordonnées et s'arrête dès qu'une passe ne fait aucun échange (
Echange = faux), ou quand il ne reste qu'un élément.Signature : « PROC TRIER »
TS-CTri par insertion — contexte fichier / voisinage
Le tri par insertion place chaque nouvel élément à sa place parmi les éléments déjà triés (décalages). Le devoir i-s1-01 l'utilise pour ordonner un voisinage de cases d'un tableau/matrice avant écriture fichier.
Signature : « trié dans l'ordre croissant »
TS-DRecherche dichotomique : justifier le tableau trié, compléter la version itérative, variante récursive et position d'insertion
Dès que le tableau est trié — et le sujet fait justifier cette caractéristique —, on compare x à la case du milieu et on élimine la moitié qui ne peut pas le contenir.
Signature : « Quelle caractéristique présente le tableau T pour privilégier la recherche dichotomique à la recherche séquentielle ? » ; « Compléter l'algorithme suivant de la fonction booléenne RechDicho qui exploite le principe de la méthode de recherche dichotomique » ; « Quel est le rôle de la variable P » ; « utilise la recherche dichotomique pour déterminer la position d'insertion » ; « on peut utiliser une méthode de recherche dite Trichotomique » ; « Déduire le rôle de la fonction Quoi »
RA
Algorithmes récurrents et arithmétiques
10 scénariosRA-DAlgorithmes arithmétiques — Euclide, primalité, décomposition en facteurs premiers
L'énoncé donne un ou deux entiers et demande d'implémenter des algorithmes classiques : calcul du PGCD par l'algorithme d'Euclide, test de primalité par essais de division jusqu'à , ou décomposition en facteurs premiers.
Signature : « Écrire l'algorithme du PGCD par la méthode d'Euclide » ; « Donner la trace de l'algorithme d'Euclide pour … » ; « Écrire une fonction qui teste si un entier est premier » ; « Écrire un algorithme de décomposition en facteurs premiers »
RA-EComptage des chiffres d'un entier (trace + rôle + conversion)
Forme calquée sur l'exercice 2 de 2019 : séquence
Tant que (x Div 10 ≠ 0), trace pour trois valeurs, rôle (nombre de chiffres en base décimale), puis séquence équivalente par conversion Convch + Long.Signature : « Compléter le tableau nb pour x ∈ {5403, 176, 3} » ; « Donner le rôle (nombre de chiffres) » ; « séquence équivalente sans structure itérative (Convch + Long) »
RA-FReconnaissance d'algorithmes arithmétiques (produit, somme, Euclide)
Forme calquée sur l'exercice 2 de 2018 : cinq algorithmes arithmétiques F1–F5 (produit par additions, multiplications répétées, somme d'intervalle, plus grand diviseur commun par soustractions / par restes type Euclide), validation…
Signature : « Valider V/F : produit a×b, multiplications répétées, plus grand diviseur commun, somme des entiers de [a..b] »
RA-GPrimalité d'un entier naturel — test par division
Un entier naturel est premier (test de primalité) s'il n'admet aucun diviseur dans . Le corrigé bac 2015 code ce test avec une boucle
mod jusqu'à la racine carrée.Signature : « Premier / primalité »
RA-HConversion d'un entier décimal en binaire
La conversion d'un entier décimal (base 10) vers le binaire (base 2) accumule les bits en divisant par 2. Chaque bit de poids faible sort en premier : on le place en tête du résultat.
Signature : « base 10 vers la base 2 »
RA-ISuccesseurs et conversions entre bases 2, 8, 10, 16
Manipuler les bases 2, 8 et 16 : successeur d'un littéral (sans re-convertir tout en décimal si possible) et conversion octal→décimal, décimal→hexadécimal.
Signature : « successeur de chaque nombre »
RA-JModules PGCD et PGCDTous — spécification algorithmique
Spécifier deux modules arithmétiques :
PGCD(a,b) (algorithme d'Euclide par mod) et PGCDTous qui calcule le PGCD d'une liste d'entiers naturels en réutilisant Euclide.Signature : « modules PGCD et PGCDTous »
RA-KNombre défini par l’énoncé : fonction de test construite sur une brique (chiffres, facteurs premiers), N premiers, filtrage d’un tableau et affichage groupé
L’énoncé invente une propriété (nombre de Keith, premier sûr, primaire, triangulaire carré…) et la montre sur trois ou quatre exemples, dont un contre-exemple.
Signature : « Un entier … est dit … s’il … » ; « Exemples : » ; « qui permet de retourner la valeur de l’entier … et 0 dans le cas contraire » ; « qui affiche les N premiers … » ; « générer un deuxième tableau T2 contenant les éléments de T1 qui sont … » ; « regroupés selon leurs nombres de chiffres »
RA-LSuite récurrente : ordre de récurrence, premiers termes, calcul de Un par variables glissantes, remplissage d’un tableau, rang d’un seuil
Une suite est donnée par ses premiers termes et une relation. L’ordre de récurrence est le nombre de termes précédents dont dépend Un ; c’est aussi le nombre de valeurs initiales et le nombre de variables glissantes du calcul.
Signature : « Soit la suite … définie par » ; « Quel est l’ordre de récurrence de la suite ? Justifier » ; « Déterminer … les valeurs correspondantes aux termes » ; « qui permet de calculer le terme Un » ; « remplir un tableau T … par les N premiers termes de la suite » ; « Compléter l’algorithme de la procédure »
RA-MConversion d’un entier en base B (2 ≤ B ≤ 16) modularisée : ranger les restes, renverser, convertir un chiffre, concaténer, reconvertir
La conversion décimal → base B est l’outil le plus régulier de l’épreuve d’algorithmique de la section Sciences de l’informatique.
Signature : « on effectue des divisions euclidiennes par B » ; « les restes successifs seront rangés dans un tableau » ; « qui permet de retourner le caractère qui correspond à l’entier » ; « qui renverse les … éléments rangés dans le tableau » ; « En faisant appel uniquement aux modules déjà définis »
AP
Algorithmes d’approximation
3 scénariosAP-BMéthode de Newton (tangente)
L'énoncé donne une fonction dérivable et demande d'approcher une racine par la méthode de Newton : à partir d'un point , on suit la tangente jusqu'à l'axe des abscisses pour obtenir , et ainsi de suite.
Signature : « Écrire un algorithme utilisant la méthode de Newton pour approcher la solution de » ; « Donner la formule de récurrence en fonction de » ; « Quel est le critère d'arrêt de l'algorithme ? » ; « Donner la trace pour les trois premières itérations » ; « Comparer la convergence de Newton et de la dichotomie »
AP-DApproximation d'une valeur par suite convergente (Héron / série de π)
L'énoncé demande d'approcher une valeur (, , …) par une suite convergente définie par récurrence ou par sommation partielle d'une série. Pour , la méthode de Héron donne…
Signature : « Écrire un algorithme qui approche par la méthode de Héron » ; « Vérifier que si la suite converge, elle converge vers » ; « Écrire un algorithme qui approche à près par la série de Leibniz » ; « Donner la trace pour les premières itérations » ; « Quel est le critère d'arrêt de l'algorithme ? »
AP-EApproximation par une série dont le terme appelle des modules fournis (Fact, Puiss, Premier) : m premiers termes, puis arrêt à ε
L’épreuve donne une série (ou un produit) dont on veut une valeur approchée, et des modules déjà écrits — Fact, Puiss, Expo…
Signature : « Ecrire un algorithme d’une fonction … qui calcule … à l’aide du développement en série de … pour les m premiers termes de cette série » ; « La fonction doit faire appel aux fonctions Fact et Puiss sans les développer » ; « permettant de calculer, à epsilon près, une valeur approchée de » ; « En faisant appel à la fonction … écrire une fonction … qui permet de calculer une valeur approchée de » ; « Le calcul s’arrête quand la différence entre deux sommes successives devient inférieure ou égale à une erreur Epsilon » ; « Avec P un entier tel que … = Vrai »
BD
Bases de données et SQL
10 scénariosBD-ASQL LDD — V/F, CREATE/ALTER/DROP et intégrité référentielle
Premier geste des bases de données attesté en synthèse SI (i-s1-04) : propositions V/F sur le LDD SQL (
CREATE, ALTER, DROP), la clause ON DELETE CASCADE, et l’écriture d’une clé étrangère par ALTER TABLE.Signature : « Dans le contexte des bases de données, et pour chaque proposition »
BD-BSchéma relationnel — représentation textuelle, PK et FK
Passage classique des bases de données SI : à partir d’une représentation textuelle (tables, # pour FK), repérer clés primaires, clés étrangères et relations. Ancré sur le schéma bibliothèque de i-s1-04.
Signature : « représentation textuelle d’une base de données »
BD-CCREATE TABLE et ALTER — contraintes d’une bibliothèque
Écriture de commandes SQL LDD :
CREATE TABLE avec clé primaire / clé étrangère, puis ALTER TABLE pour ajouter une colonne. Transposition textuelle du devoir bibliothèque i-s1-04 (sans recopier le barème).Signature : « Créer les tables »
BD-DRequêtes SELECT — projection, sélection, jointure simple
Partie LMD : écrire des requêtes SQL
SELECT sur le schéma bibliothèque attesté (i-s1-04). Pas d’interface graphique : la réponse est le texte SQL.Signature : « Écrire les commandes SQL »
BD-FRequêtes SELECT d'examen sur un schéma de sept tables : DISTINCT, dates, tri, GROUP BY et HAVING, NOT IN, sous-requête MAX ou AVG
Dans la partie « manipulation des données » des sujets de la section Sciences de l'informatique, cinq à neuf questions en langage naturel portent sur un même schéma (« Quels sont… ? On affichera les champs… »).
Signature : « Écrire en SQL les requêtes permettant de répondre aux questions suivantes » ; « On affichera les champs » ; « Quel est le nombre de … pour chaque … » ; « dont le revenu total … dépasse strictement » ; « qui n'ont pas été loués pendant l'année » ; « ayant le prix de location le plus élevé »
BD-GMises à jour racontées : INSERT dans l'ordre des clés étrangères, valeur inconnue (NULL), UPDATE en pourcentage via une sous-requête, suppression sans cascade, insertion refusée
Le sujet raconte un événement de gestion avec toutes ses valeurs — une station inaugurée, un trajet en cours, une remise, une purge d'anciennes données — et demande les requêtes INSERT, UPDATE ou DELETE qui le traduisent.
Signature : « Écrire les requêtes SQL permettant d'insérer les données relatives à … dans les différentes tables » ; « supprimer de la base toutes les données relatives aux … » ; « augmenter de 5% tous les … » ; « Comment réduire de 15 % les prix » ; « quelles sont les tables qui seront touchées ? » ; « une nouvelle intervention non achevée »
BD-HRéparer ou faire évoluer un schéma selon des règles de gestion R1…Rn : côté de la clé étrangère, clé d'une table d'historique, table de référence, table d'association
Depuis 2021, le sujet de la section Sciences de l'informatique ne fait plus concevoir une base à partir de zéro : il donne une première conception (représentation graphique) et une liste de règles de gestion R1, R2, …, puis fait juger et…
Signature : « afin de remédier aux anomalies détectées dans la conception de la base de données » ; « La règle R1 est-elle respectée ? Répondre par Oui ou Non » ; « tout en soulignant les clés primaires et spécifiant les clés étrangères par l'ajout du symbole # » ; « le nom de la règle de gestion … non respectée » ; « Réécrire la représentation textuelle de la base en tenant compte de cette nouvelle contrainte »
BD-IContrainte d'intégrité violée : requêtes refusées, lignes fautives à l'insertion, V/F justifié par la clause, mot-clé de contrainte
Le sujet donne les requêtes de création (clé primaire, clés étrangères, CHECK, NOT NULL, UNIQUE, DEFAULT) et le contenu des tables, puis fait diagnostiquer : quelle contrainte une requête ou une ligne à insérer viole-t-elle, et laquelle…
Signature : « Indiquer pour chaque requête la contrainte d'intégrité non respectée et justifier la réponse » ; « le SGBD génère des erreurs au niveau de quelques lignes » ; « en identifiant les deux anomalies détectées ainsi que la contrainte d'intégrité non respectée » ; « Justifier votre réponse par la clause de la contrainte correspondante » ; « mettre une croix (X) devant la bonne réponse »
BD-JInterpréter une requête donnée : table résultat sur des extraits, rôle, ajout d'un HAVING, équivalent sans IN, associer requêtes et rôles
C'est le sens inverse de l'écriture de requêtes : le sujet donne une requête SQL et de petits extraits de tables, et fait écrire la table résultat avec ses noms de colonnes, puis le rôle de la requête en une phrase « pour chaque …
Signature : « donner le résultat de l'exécution de la requête R … tout en indiquant les noms des colonnes » ; « En déduire le rôle de la requête » ; « Donner une requête SQL équivalente à la requête R, sans utiliser l'opérateur IN » ; « compléter la colonne « Réponse » avec la lettre correspondante à son rôle » ; « En exécutant la requête …, le système : »
BD-KÉtude de cas complète sur un seul schéma : partie A en quatre exercices — lire le schéma, interpréter des requêtes, interroger, étendre
Depuis la session 2025, la partie A de l'épreuve de la section Sciences de l'informatique (12 à 13 points) porte tout entière sur une seule base de données, en quatre exercices numérotés : interpréter la base (représentation textuelle…
Signature : « Partie A : Gestion de la base de données » ; « Donner la représentation textuelle de cette base de données en précisant pour chaque table son nom » ; « compléter la colonne Réponse avec la lettre correspondante à son rôle » ; « Écrire en SQL les requêtes permettant de répondre aux questions suivantes » ; « Le tableau ci-dessous contient quatre représentations textuelles erronées »
WB
Web et TIC
9 scénariosWB-AHTML — cadres, liens et formulaires (navigation web)
Dans les devoirs machine TIC de section SI, le premier lot de points porte sur la réalisation du site : page d’accueil en cadres, page de liens avec
target, pages de formulaires (name, action, method…Signature : « Créer la page Index.Html dont la structure est la suivante »
WB-BJavaScript — validation de formulaire et return false
Le second lot du devoir machine TIC note les scripts de contrôle : fonctions JavaScript externes (
verif1, verif2…) appelées par onsubmit="return verif…()".Signature : « fonction JavaScript intitulée verif… »
WB-CPHP/MySQL — flux requête web, branches et messages
Le troisième lot note les scripts côté serveur : récupérer
$_POST, ouvrir MySQL (syntaxe d’examen mysql_*), vérifier l’existence des clés, INSERT/UPDATE/SELECT, puis *echo…Signature : « isset($_POST[…]) »
WB-EHTML5 — lire une page numérotée : rôle ↔ ligne, attributs du formulaire, balises à insérer, comportements
Depuis 2024, la partie web du bac Sciences de l’informatique ne fait plus écrire une page : elle donne l’aperçu d’une page et son code HTML5 numéroté, souvent incomplet, et fait lire ce code.
Signature : « Indiquer devant chaque rôle le numéro de la ligne contenant le code HTML qui lui correspond » ; « écrire devant chaque balise le numéro de la ligne dans laquelle elle doit être insérée » ; « compléter chaque ligne du tableau par la valeur de l’attribut concerné » ; « mettre une croix (X) dans la case correspondante à la proposition correcte » ; « sachant qu’il manque le mot clé return dans l’attribut onsubmit »
WB-FCSS — relier sélecteurs (classe, id, élément, :hover) et rendu, règles appliquées à un élément, écrire des règles depuis une liste
Chaque session du bac Sciences de l’informatique depuis 2023 pose une question de CSS sur la page du site étudié : une feuille de style et un aperçu sont donnés, et il faut décider quelle déclaration HTML (class, id, balise) produit le…
Signature : « répondre par V si la déclaration HTML5 proposée répond à la situation donnée » ; « indiquer le type de sélecteur utilisé (classe, identifiant, élément), si la règle est liée à un évènement » ; « Quels sont les numéros des règles … qui vont s’appliquer » ; « écrire dans la colonne « Code CSS » le code CSS adéquat à chaque mise en forme demandée » ; « pour chaque étiquette, entourer la proposition correcte »
WB-GJavaScript donné — compléter les tâches parmi des propositions, tracer sur des états du formulaire, déduire le rôle
Au bac Sciences de l’informatique, le JavaScript se lit : un script de validation ou de mise en forme est donné, souvent à trous.
Signature : « en écrivant le numéro de l’expression correcte correspondante à chaque « Tâche » indiquée dans la fonction » ; « Indiquer devant chaque rôle l’élément du langage JavaScript qui lui correspond » ; « donner pour chaque exemple la valeur retournée en complétant la trace d’exécution » ; « En déduire le rôle de la fonction inconnue » ; « Donner le résultat de l’exécution de l’instruction de la ligne »
WB-HPHP/mysqli — compléter un script serveur depuis une liste, exploiter num_rows, affected_rows et fetch, prédire son comportement
Au bac Sciences de l’informatique, le PHP ne s’écrit plus d’un bloc : un script serveur qui reçoit un formulaire est donné, souvent à trous. Il faut le compléter à partir d’une liste de fonctions, relier les clés de…
Signature : « compléter la colonne « Fonction » en écrivant la fonction correspondante à partir de la liste » ; « Quel est le comportement du script dans le cas où … » ; « L’instruction de la ligne … peut être remplacée par » ; « Suite à l’exécution de l’instruction de la ligne …, la variable … contient » ; « compléter le fichier … par les instructions nécessaires à la récupération et la mise à jour des données »
WB-IQCM technologies web — HTML, CSS, JavaScript, PHP et SQL mélangés, une seule bonne réponse par question
De 2022 à 2024, chaque épreuve de la section Sciences de l’informatique s’ouvre sur un QCM de cinq à huit questions qui mélange HTML, CSS, JavaScript, PHP et SQL, avec une seule bonne réponse par question.
Signature : « Pour chacune des questions ci-dessous, mettre une croix (X) dans la case correspondante à la réponse correcte » ; « toute réponse comportant plus d’une croix est considérée erronée » ; « En CSS, quel est le rôle de la propriété … » ; « En PHP, quelle est l’instruction à utiliser pour … » ; « En JavaScript, qu’affiche l’instruction suivante ? »
WB-JPartie B complète sur un seul site — HTML, CSS, JavaScript puis PHP : suivre id, name, classes et données envoyées d’un fichier à l’autre
Depuis 2024, la partie web de l’épreuve Sciences de l’informatique étudie un seul site, couche par couche : le code HTML d’une page, sa feuille de style, son script JavaScript et le script PHP qui reçoit le formulaire, en quatre exercices…
Signature : « Partie B : Programmation Web (8 points) » ; « Le site est composé des pages … » ; « Indiquer devant chaque rôle le numéro de la ligne contenant le code HTML qui lui correspond » ; « écrire dans la colonne « Code CSS » le code CSS adéquat à chaque mise en forme demandée » ; « En se référant aux codes des fichiers … et suite au clic sur le bouton … »
FE
Fichiers, enregistrements et matrices
8 scénariosFE-AChaîne de fichiers texte : lire ligne par ligne, transformer, écrire un fichier résultat au format imposé
Un fichier texte source, qui contient un élément par ligne, est lu ligne par ligne jusqu'à `Fin…
Signature : « En disposant d'un fichier texte nommé … » ; « contenant dans chaque ligne … » ; « générer un nouveau fichier texte … » ; « Donner une instruction d'association (d'ouverture) pour chacun des deux fichiers » ; « Le candidat n'est pas appelé à remplir le fichier … »
FE-BFichier d'enregistrements : déclarer, ouvrir, remplir par O/N, relire pour un verdict ou un second fichier
Un fichier d'enregistrements (.dat) se manipule en trois temps. On le déclare : un type Enregistrement, puis un type Fichier de cet enregistrement.
Signature : « Écrire une instruction d'assignation (d'ouverture) du fichier … » ; « Donner une déclaration pour le type du fichier … ainsi que pour tout nouveau type nécessaire » ; « La saisie se termine en répondant par "N" à la question … (O/N) » ; « de même structure » ; « créer et remplir un fichier d'enregistrements »
FE-CProblème « pipeline de fichiers » : fichier texte → fichier d’enregistrements → fichier texte résultat
Le problème de fin d'épreuve de la section Sciences de l'informatique enchaîne souvent trois fichiers.
Signature : « En disposant d'un fichier texte … dont chaque ligne contient … » ; « Générer un fichier d'enregistrements … où chaque enregistrement comporte … » ; « Générer un fichier texte … par la liste des … suivis de la liste des … » ; « séparant les deux listes par une ligne vide » ; « Analyser le problème en le décomposant en modules »
FE-GCryptage d'un fichier texte selon un procédé décrit pas à pas : rang, transformation, lettre, puis décryptage
Le sujet décrit un procédé de cryptage en étapes numérotées, illustré par un exemple complet.
Signature : « Le cryptage de chaque mot se fait en trois étapes décrites comme suit » ; « Parmi les méthodes de cryptage utilisées pour crypter un texte … » ; « crypter le contenu d'un fichier texte …, ligne par ligne, et enregistrer le résultat dans un 2ᵉ fichier texte » ; « Exemple : … d'où le cryptage du mot … donne le mot … »
FE-HValider ou corriger des instructions : compatibilité des types (nouveaux types et objets) et primitives de fichiers mal employées
L'exercice d'ouverture donne des déclarations (nouveaux types et objets) puis des instructions ou un algorithme présenté comme erroné. Chaque ligne se juge par une seule question : ce qui est produit a-t-il le type de ce qui le reçoit ?
Signature : « valider chacune des instructions en mettant dans la case correspondante … la lettre V … ou la lettre F » ; « Justifier la réponse si l'instruction est invalide » ; « contenant trois erreurs dans le choix des fonctions et des procédures prédéfinies utilisées » ; « cinq lignes de cet algorithme comportent des erreurs de logique ou de syntaxe »
FE-DTableau d'enregistrements : déclarer le type, remplir, trier sur deux clés en échangeant l'enregistrement entier
Des objets à plusieurs caractéristiques (un rendez-vous, un match, une date, un élève) se rangent dans un tableau d'enregistrements : on déclare l'enregistrement puis le tableau, on remplit en contrôlant chaque champ, et on accède aux…
Signature : « Chaque … est un enregistrement formé de … champs » ; « Compléter le tableau de déclaration des nouveaux types » ; « trier … dans l'ordre croissant du … et en cas d'égalité … » ; « L'instruction e1 ← e2 … » ; « Donner une structure de données adéquate pour représenter … » ; « donner le type de l'objet x »
FE-EMatrice : rechercher un motif par parcours et écrire les positions trouvées dans un fichier texte
On parcourt une matrice case par case (i, puis j) pour y reconnaître un motif défini par l'énoncé : maximum de sa ligne et minimum de sa colonne, quatre cases consécutives identiques, ligne ou colonne palindrome, suite contiguë de…
Signature : « On se propose de remplir un fichier texte … par les positions … » ; « Chaque ligne du fichier contiendra … séparés par un espace » ; « … sont les éléments qui sont minimum sur leur ligne et maximum sur leur colonne » ; « … cases consécutives dans le sens horizontal ou dans le sens vertical » ; « Pour les cases situées sur les bords de la matrice … »
FE-FMatrice : produit, transposée, matrice stochastique et tableau stable
Un calcul sur des matrices se ramène à des boucles imbriquées dont on fixe exactement le rôle : deux boucles choisissent la case du résultat, une troisième fait la somme, avec un accumulateur remis à 0 pour chaque case.
Signature : « On se propose de générer une matrice … sachant que les éléments de cette matrice sont calculés comme suit » ; « … est dite stochastique … » ; « Un tableau T … est dit stable pour … » ; « Struct2[j, i] ← Struct1[i, j] » ; « Quelle est la déclaration valide de X ? » ; « Les lignes sont remplies jusqu'à la diagonale principale »