L'algorithme ROT13 décale chaque lettre de 13 positions dans l'alphabet. Comme l'alphabet a 26 lettres, appliquer ROT13 deux fois revient au message original.
### Solution
```python
defchiffrement_rot13_mot(mot):
"""
Chiffre un mot avec l'algorithme ROT13.
:param mot: (str) Le mot à chiffrer (en minuscules)
:return: (str) Le mot chiffré
"""
resultat=""
forlettreinmot.lower():
if'a'<=lettre<='z':
# Calculer la nouvelle position
code=ord(lettre)-ord('a')# Position 0-25
nouveau_code=(code+13)%26# Décalage de 13
nouvelle_lettre=chr(nouveau_code+ord('a'))
resultat+=nouvelle_lettre
else:
# Garder les caractères non alphabétiques
resultat+=lettre
returnresultat
defchiffrement_rot13(message):
"""
Chiffre un message complet avec l'algorithme ROT13.
>>>cesar("bonjour",3)# Décalage de 3 (César classique)
'erqmrxu'
>>>decesar("erqmrxu",3)
'bonjour'
>>>cesar("bonjour",13)# ROT13
'obawbhe'
```
---
Auteur : Florian Mathieu
Licence CC BY NC
<a rel="license" href="http://creativecommons.org/licenses/by-nc-sa/4.0/"><img alt="Licence Creative Commons" style="border-width:0" src="https://i.creativecommons.org/l/by-nc-sa/4.0/88x31.png" /></a> <br />Ce cours est mis à disposition selon les termes de la <a rel="license" href="http://creativecommons.org/licenses/by-nc-sa/4.0/">Licence Creative Commons Attribution - Pas d'Utilisation Commerciale - Partage dans les Mêmes Conditions 4.0 International</a>.