Chiffrement et déchiffrement

Pour chiffrer une chaîne de caractère en utilisant la stratégie de César, il va falloir décaler chaque caractère en utilisant une clef qui est une valeur entière. On pourra donc décomposer cette étape en deux: d'abord définir une fonction qui décale un caractère en utilisant une clef, et ensuite une fonction qui décale une chaine de caractère en utilisant une clef.

Exercice 1

  • Sur papier, écrire une fonction decaleCaractere(c,n) qui prend comme arguments un caractère minuscule sans accent et un entier, et qui retourne le caractère décalé comme cela était expliqué dans la section précédente. On pourra utiliser pour cela les fonction ord() et chr() qui permettent repectivement de convertir un caractère en son nombre ascii correspondant et inversement. Tester pour cela ord("a"), ord("b"), chr(ord("t"))...
  • Passer du papier à l'ordinateur, testez votre programme, et notez les éléments de langage que vous ne maitrisez pas encore. Est-ce que j'oublie de mettre le ":" à la fin de la ligne du "if"? Si oui, alors je l'écris clairement sur papier.

Exercice 2

  • En suivant la même méthode que dans l'exercice 1, écrire une fonction decaleChaineCaractere(s,n) qui chiffre (ou décale) une chaine de caractère composée seulement de minuscules sans accent.
  • Le message "lsoxtyeofyeckfojdobwsxovohobmsmonoeh" est le résultat d'un chiffrement avec la clef 10. En utilisant la fonction decaleChaineCaractere() dechiffrer ce message.