#~*~coding: utf-8~*~
"""  liste des variables:
lettes (caractere) sert de repere pour decaller les lettres.
choix (chiffre) sert pour la saisie du choix dans le menu, ne prend que la valeur 1 ou 2.
entree (caractere) sert pour la saisie du texte a crypter.
cle (chiffre) sert a crypter selon le decallage souhaiter.
sortie (caractere) sert a donner le resultat final.

Algorithme papier:
lettres= abcdefghijklmnopqrstuvwxyz
afficher choix 1: crypter ou choix 2: decrypter
choix utilisateur

#affichage du menu

si choix = 1
    entree le texte a crypter
    entree la clé choisie
    #cryptage
    Pour i de 0 a longueur de la chaine texte -1
        n prend la valeur de ( l'index du caractere à la position i dans texte + clé ) [ longueur de lettres ]
        sortie prend la valeur sortie + caractere a la position n  de lettres
    afficher le texte crypter

sinon si choix = 2
#decryptage
  Pour i de 0 a longueur de la chaine texte -1
        n prend la valeur de ( l'index du caractere à la position i dans texte - clé ) [ longueur de lettres ]
        sortie prend la valeur sortie - caractere a la position n  de lettres
    afficher le texte decrypter

sinon si choix different de 1 ou 2 afficher "choix invalide"

"""






lettres = 'abcdefghijklmnopqrstuvwxyz'

print("Choisir 1:crypter ou 2:decrypter")
choix=int(input())

#affichage du menu

if choix==1:    
    entree = input('Texte a crypter : ')
    cle = int(input('Cle (doit etre un nombre) : '))
#cryptage
    sortie = ""
    for i in entree:
        try:
            n = (lettres.index(i)+cle) % len(lettres)
            sortie += lettres[n]
        except:
            sortie += i
elif choix==2:                
    entree = input('Texte a decrypter : ')
    cle = int(input('Cle (doit etre un nombre) : '))
#decryptage
    sortie = ""
    for i in entree:
        try:
            n = (lettres.index(i)-cle) % len(lettres)
            sortie += lettres[n]
        except:

               sortie += i
#choix invalide
else:
    print("choix invalide")
if choix== 1 or choix == 2:
    print(sortie)





