TP 1 0
TP 1 0
TP 1 0
a) Ecrire une fonction strtonum(S) qui retourne un vecteur numérique associé au vecteur de lettres (S)
passée en paramètre de cette fonction, en respectant la représentation ci-dessus. Tester cette fonction
b) Ecrire une fonction numtostr(n) qui convertit un vecteur de nombre entier (n) compris entre 0..25
passé en paramètre, à un vecteur de lettres qui lui correspond dans l’alphabet. Tester cette fonction.
Exercice 2 :
Proposer une extension des fonctions précédentes pour prendre en charge tous les caractères à l’exception des
caractères de contrôle, en utilisant la notation ASCII-128 (voir table ASCII ci-dessous).
Exercice 3 :
On considère un algorithme de chiffrement par décalage de K lettres.
a) En utilisant les fonctions de l’exercice 2, écrire les fonctions de Chiffrement/Déchiffrement, shift (M,
K) et deshift(C, K).
b) En utilisant ces deux fonctions, écrire un Script qui chiffre/déchiffre un texte saisi au clavier par une
clé (nombre entier entre 1..94) saisie au clavier.
c) Ecrire un autre script qui chiffre/déchiffre un fichier texte.
d) On a intercepté le cryptogramme : ‘dibjz{zOPzH"<NzOMJPQ@’ chiffré par shift(M, K) mais on
ignore la clé K, écrire une fonction allshift(C) qui déchiffre ce message et en déduire la clé K.