#! /usr/bin/python
# -*- coding: UTF-8 -*-
#
# ******************
# Chiffre de césar
# ******************
import sys
if len(sys.argv)<=2 :
print"""
Usage : ./cesar.py [text] [keys]
-[text] "Texte à Transcrire" (n'oubliez pas les doubles-quotes)
-[keys] "Clé à utiliser (un chiffre entre 1 et 25>
"""
sys.exit(1)
text=sys.argv[1]
keys=sys.argv[2]
cesar=""
for caract in text:
# caractere est une lettre
if (ord(caract)>=ord('a') and ord(caract)<=ord('z') or
ord(caract)>=ord('A') and ord(caract)<=ord('Z')):
new_caract=chr(ord(caract)+int(keys))
# Si le nouveau caractère est en dehors de l'alphabet, on ajuste le tir
if (ord(new_caract)>ord('Z') and ord(new_caract)
ord(new_caract)>ord('z') or ord(new_caract)
new_caract=chr(ord(new_caract)-26)
cesar += new_caract
else :
cesar+= caract
print "[ " + text + " ] = " + cesar
Encodeur : Chiffre de césar
On a vu précédemment Rot13, qui est une particularité du chiffre de césar. On continu donc sur notre lancé avec le chiffre de césar lui-même.
Libellés :
code
Aucun commentaire:
Enregistrer un commentaire