RÉPUBLIQUE TUNISIENNE |
Épreuve pratique d’informatique |
|
Durée : 1h |
Coefficient : 0.5 |
|
Sections : Maths, Sciences |
Date : 25 mai 2017 |
Important :
1) Une solution modulaire au problème est exigée. 2) Enregistrez au fur et à mesure votre programme dans le dossier Bac2017 situé à la racine C: en lui donnant comme nom votre numéro d’inscription (6 chiffres). |
Dans le but de sécuriser les messages à envoyer, on peut faire appel à une méthode de cryptage. Soit la méthode de cryptage suivante qui consiste à crypter par transposition de caractères, un message M de longueur L décrite comme suit:
- Déterminer tous les diviseurs de L autres que 1 et lui même.
- Pour chaque diviseur d de L et en commençant par le plus petit, on inverse symétriquement les caractères de chaque bloc de longueur d.
Pour le message "INFORMATIQUE" dont la longueur L = 12.
- Les diviseurs de 12 autres que 1 et 12 sont : 2, 3, 4 et 6.
- Les inversions des blocs de caractères seront effectuées comme suit :
● Après inversion de chaque bloc de 2 caractères de la chaîne "INFORMATIQUE", on aura la chaîne "NIOFMRTAQIEU".
● Après inversion de chaque bloc de 3 caractères de la chaîne " NIOFMRTAQIEU ", on aura la chaîne "OINRMFQATUEI".
● Après inversion de chaque bloc de 4 caractères de la chaîne " OINRMFQATUEI ", on aura la chaîne "RNIOAQFMIEUT".
● Après inversion de chaque bloc de 6 caractères de la chaîne " RNIOAQFMIEUT ", on aura la chaîne " QAOINRTUEIMF ".
On se propose d’écrire un programme Pascal intitulé « Cryptage » qui permet de saisir un message M dont la longueur est un nombre non premier et supérieur à 4 et d’afficher le message crypté en utilisant la méthode décrite précédemment.
Pour cela on donne l’algorithme du programme principal suivant :
0) Début Cryptage
1) Répéter
Ecrire ("Donner le message à crypter :”)
Lire(M)
Jusqu’a (FN Valide (M))
2) Ecrire (FN Crypter (M))
3) Fin Cryptage
Travail demandé :
a. Traduire l’algorithme Cryptage en un programme Pascal et ajouter les déclarations nécessaires.
b. Transformer la séquence n°1 en un module et apporter les modifications nécessaires dans le programme principal.
c. Développer le module Valide qui permet de vérifier si la longueur du message M est un nombre non premier et supérieur à 4.
d. Développer le module Crypter qui permet de crypter un message M en utilisant le principe décrit précédemment.
Grille d’évaluation :
Questions |
Nombre de points |
a. Traduction de l’algorithme Cryptage en Pascal + Ajout des déclarations nécessaires. b. Transformation de la séquence n°1 en un module + Modifications nécessaires dans le programme principal. c. Développement du module Valide. d. Développement du module Crypter. |
3,5 + 1,5
3 + 1
3,5 7,5 |