Code secret – Bac informatique pratique scientifique 2026

Bac Pratique 28-05-26
14 0

Sujet bac pratique (scientifique 2026)

Un joueur piégé dans une pièce fermée, dispose d’un paquet d’étiquettes de lettres alphabétiques distinctes. Pour sortir, il doit trouver le code secret d’ouverture de la porte qui est représenté par les couples de lettres alphabétiques ayant un écart minimal absolu entre leurs codes ASCII.

Dans ce contexte, on envisage de développer une application, enrichie par une interface graphique, qui simule la détermination de ce code secret selon le principe suivant :

-  saisir un entier N (5≤N≤26),

- remplir un tableau T par N lettres alphabétiques majuscules distinctes générées aléatoirement,

-  déterminer l’écart minimal absolu entre les codes ASCII des différents couples de lettres (T[ i ], T[ j ]) avec i < j, - déterminer la clé formée par la concaténation des lettres alphabétiques de chaque couple ayant cet écart minimal. Exemple :

Pour le tableau T suivant contenant 5 lettres alphabétiques majuscules distinctes :

Les couples sont : (A,R) ; (A,H) ; (A,F) ; (A,P) ; (R,H) ; (R,F) ; (R,P) ; (H,F) ; (H,P) ; (F,P)

Le tableau suivant présente l’ensemble des couples de lettres ainsi que l’écart absolu entre leurs codes ASCII respective :

- L’écart minimal absolu est égale à 2.

-  Le code secret est RP-HF

Travail demandé

1. Créer l’interface graphique illustrée dans la figure Fig-1 suivante et l’enregistrer sous le nom InterfaceCode.

2. Créer un programme en python et l’enregistrer sous le nom CodeSecret, dans lequel on demande :

a. D’implémenter l’algorithme suivant de la procédure Remplir qui permet de remplir un tableau T par N lettres alphabétiques majuscules distinctes, générées aléatoirement.

b. D’écrire une fonction booléenne Existe (T, K, C) qui permet de vérifier l’existence d’un caractère C dans un tableau T contenant K caractères.

c. D’écrire une fonction EcartMin (T, N) qui retourne la valeur absolue de l’écart minimal entre les codes ASCII des couples de lettres du tableau T.

d. D’écrire une fonction Couple (T, N) qui détermine une chaîne de caractères formée par la concaténation des lettres des couples du tableau T, ayant un écart minimal séparés, par le symbole "-". Cette fonction doit exploiter la fonction EcartMin.

e. D’écrire un module Play, qui s’exécute suite au clic sur le bouton "Chercher", permettant :

- de récupérer la valeur du nombre N saisi, de s’assurer de sa validité comme décrit précédemment et d’afficher, le cas échéant, le message adéquat via le label dédié à l’affichage, comme illustré dans les figures Fig-2 et Fig-3,

- d’exploiter les modules Remplir et Couple afin d’afficher le message adéquat via le label dédié à l’affichage, comme illustré dans la figure Fig-4.

f. D’exploiter l’annexe présentée ci-après tout en apportant les modifications nécessaires à l’intégration de l’interface graphique InterfaceCode.

 

Solution en Python et Designer QT

Pour créer une application en Python et Designer QT afin de concevoir une application, enrichie par une interface graphique, qui simule l’attribution d’adresses IP aux machines d’un réseau local par un serveur DHCP et vérifie si deux machines d’adresses données IP1 et IP2 font partie de ce réseau local, on va suivre ces étapes:

1- Créer l'interface graphique avec Qt Designer

a- Ouvrez Qt Designer et créez un nouveau fichier de type Main Window.

b- Ajoutez ces widgets:

QLabel nommé 'affichage' pour afficher les messages générés par le programme

QLineEdit nommé 'n' pour entrer l'entier n.

QPushButton nommé 'chercher_bt' pour exécuter le module Play()

Enregistrez le fichier avec l'extension .ui, par exemple InterfaceCode.ui.

2- Créer le script Python pour l'application

Voici un exemple de script Python qui utilise l'interface graphique générée par Qt Designer.

0 commentaire

laisser un commentaire

Veuillez noter s'il vous plaît*

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Passion de robotique

Atelier robotique

Construction des robots

Bras robotique

Maison intelligente

But de ce site web

La robotique éducative joue un rôle important dans l'éducation des enfants et des jeunes en les aidant à acquérir des compétences en science et technologie.
Dans ce cadre notre site web représente une excellente ressource pour les parents, les enseignants et les enfants qui souhaitent découvrir la robotique.

Coordonnées

Zaouiet Kontech-Jemmel-Monastir-Tunisie

Photos des articles

Site robotique réalisé par Mohamed Ali Haj Salah - Prof Info