# cifrado julio cesar
# consiste en el desplazamiento de 3 letras hacia la derecha para cifrar
# y 3 letras hacia la izquierda para descifrar
# by blozzter
def cifrar(texto, largo):
if largo > 0:
i = 0
palabra = ""
print 'el texto cifrado es: ',
while i < largo:
num = ord(texto[i])
if num == 120:
letra = 'a'
elif num == 121:
letra = 'b'
elif num == 122:
letra = 'c'
else:
num += 3
letra = chr(num)
palabra += letra
i += 1
print palabra
def descifrar(texto, largo):
if largo > 0:
i = 0
palabra = "" #partimos con una variable vacia
print 'el texto descifrado es: ',
while i < largo:
num = ord(texto[i]) #obtenemos el numero en ascii correspondiente a cada letra
if num == 97: #algunos casos especiales por estar en los limites
letra = 'x'
elif num == 98:
letra = 'y'
elif num == 99:
letra = 'z'
else:
num -= 3 #disminuimos el numero ascii en 3
letra = chr(num) #asociamos el numero a una letra
palabra += letra #vamos armando la palabra letra por letra
i += 1
print palabra
texto = raw_input('ingresa texto: ')
largo = len(texto) #encontramos cuantos caracteres tiene el texto
print '\n1.- cifrar'
print '2.- descifrar\n'
opcion = input('ingresa opcion: ')
if opcion == 1:
cifrar(texto, largo)
if opcion == 2:
descifrar(texto, largo)