Exercice
Le chiffre de César est un chiffrement très simple qui décale chaque lettre d'un nombre constant. Par exemple, pour un chiffre de César de rang 3, un a devient un d, un b devient un e, un c devient un f, etc.
Voici l'algorithme de déchiffrement pour un chiffre de César de rang 3 :
1
Algo César:
2
3
Entrée:
4
texte_chiffré, chaîne de caractère
5
6
Pour tout i de 1 à longueur(texte_chiffré) faire:
7
Si texte_chiffré[i] = " " alors:
8
Afficher " "
9
Sinon:
10
lettre_chiffrée prend la valeur texte_chiffré[i]
11
lettre_déchiffrée prend la valeur lettre_chiffrée - 3 rangs
12
Affiche lettre_déchiffrée
13
FinSi
14
FinPour
Question
Voici les morceaux de JavaScript. Les mettre dans le bon ordre pour obtenir le programme permettant de déchiffrer le chiffre de César.
1
const cipher = (prompt('Entrer a cipher')).toLowerCase()
2
---
3
if (cipher[i] === ' ') {[CODE]} else {[CODE]}
4
---
5
for (let i = 0; i < cipher.length; i++){[CODE]}
6
---
7
console.log(" ")
8
---
9
const encryptedLetter = cipher.charCodeAt(i)
10
const realLetter = String.fromCharCode(((encryptedLetter - 97 + 26 - 3 ) % 26) + 97)
11
console.log(realLetter)
Solution
1
const cipher = (prompt('Entrer a cipher')).toLowerCase()
2
3
for (let i = 0; i < cipher.length; i++) {
4
if (cipher[i] === ' ') {
5
console.log(' ')
6
} else {
7
const encryptedLetter = cipher.charCodeAt(i)
8
const realLetter = String.fromCharCode(((encryptedLetter - 97 + 26 - 3) % 26) + 97)
9
console.log(realLetter)
10
}
11
}
12
Question
Déchiffrer le texte suivant : « yrxv srxyhc dffhghu dx txlcc ghvrupdlv ».
Solution
Ce qui donne : « vous pouvez acceder au quizz desormais ».