<repo_name>WiltonMontel/criptografia-cifra-de-cesar<file_sep>/cifra_cesar.py
# --------------- Códificação do trabalho Cifra de Cesar -------------------

# Variável utilizada para receber a entrada do usuário
mensagem = input('Digite a mensagem que deseja que seja criptografada ou descriptografada: ').upper()
# Define a quantidade de casas que cada letra vai transladar
chave = int(input('Digite o valor da chave: '))
# Modo de escolha do usuário para saber se deseja encriptar ou decriptar o texto
metodo = input('Escolha o modo ENCRIPTAR ou DECRIPTAR: ').upper()
# Alfabeto aceitavel no programa
alfabeto = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'
# Variavel criada para armazenar a mensagem criptografada ou descriptografada
modificado = ''
# Laço que sera executado para cada caractere
for caractere in mensagem:
    if caractere in alfabeto:
        # Retorna a posição do caractere dentro da constante e armazena na variável num
        num = alfabeto.find(caractere)
        # Obtem o numero do caractere
        if metodo == 'ENCRIPTAR':
            num = num + chave
        elif metodo == 'DECRIPTAR':
            num = num - chave
    # Faz a verificação se o valor do caractere não ultrapassou a quantidade de letras do alfabeto ou se não é menor q 0
    if num >= len(alfabeto):
        num = num - len(alfabeto)
    elif num < 0:
        num = num + len(alfabeto)
    # Concatena o caractere correspondente a num na variavel MODIFICADa no Alfabeto
    modificado = modificado + alfabeto[num]
else:
    # Concatenando o caractere sem efetuar criptografia ou decifragem
    modificado = modificado + caractere
# Mostrar o texto encriptado ou decifrado na tela:
if metodo == 'ENCRIPTAR':
    print('O texto criptografado é ', modificado)
if metodo == 'DECRIPTAR':
    print('O texto decriptado é ', modificado)
