Académique Documents
Professionnel Documents
Culture Documents
M’RABET Ilyess
*** Discipline : Algorithme & programmation
Devoir de contrôle n°2 Classe : 4ème année sciences de l’informatique 2
Epreuve pratique Date : 25/11/2014 Durée : 1heure
Une société veut sécuriser l’échange des messages confidentiels entre ses agences, pour cela
elle a décidée de créer une application qui permet de chiffrer les messages à envoyer en
utilisant le masque jetable (ou chiffre de Vernam)
- Les autres lignes : Un ensemble de mots suivi chacun par un seul espace, sauf le
dernier mot de chaque ligne doit être suivi par un point.
Principe de chiffrement :
Pour chiffrer un mot le programme doit :
Génerer une clé, qui doit avoir les caractéristiques suivantes :
La clé doit avoir un nombre de caractères égal à celui du mot à chiffrer,
Les caractères de la clé doivent êtres distincts et choisis de manière aléatoire,
Chaque clé ne doit être utilisée qu'une seule fois.
Chaque Clé doit être enregistrée dans une ligne d’un autre fichier nommé
« Cle.txt » et qui a le même numéro que celle du mot à chiffrer
On attribue une valeur différente à chaque lettre de l'alphabet ('A' vaut 0, 'B' vaut 1, 'C'
vaut 2, …, 'Z' vaut 25)
On additionne la valeur de chaque lettre du message avec la valeur de la lettre de la
clé correspondante, puis on fait modulo 26.
Travail demandé :
Ecrire un programme pascal nommé « DC2.pas », enregistré dans un dossier portant votre nom
et prénom et qui permet de réaliser toutes les fonctionnalités demandées auparavant.
Exemple :
1) Soit le fichier «msgclair.txt» suivant :
1234-3
DEVOIR DC.
ALGO ET PROG.
BON COURAGE.
NB. Pour le reste des mots du message, il faut appliquer le même principe de chiffrement
Le contenu du fichier «msgchif.txt » : Le contenu du fichier « Cle.txt » :
1234-3 JRVGXZ ZB
MVQUFQ CD. .
. .
. .
.
Grille d’évaluation :
Questions Barème
Décomposition en modules 2
Appels des modules 2
Si exécution et tests réussis avec respect des contraintes 16
Sinon
Structure de données adéquates au problème posé 2
Remplissage du fichier «msgclair.txt» 6
Remplissage du fichier «statistiques.txt» 8