Skip to content

Instantly share code, notes, and snippets.

@Marlysson
Created July 2, 2017 21:46
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save Marlysson/022499db3884cfe8e9ca9caae1c6c3e2 to your computer and use it in GitHub Desktop.
Save Marlysson/022499db3884cfe8e9ca9caae1c6c3e2 to your computer and use it in GitHub Desktop.
Um encriptador e decriptador de frase removendo vogais..
# -*- coding:utf-8 -*-
vogais = "aeiou"
def limpar_console():
import os
os.system('cls||clear')
def normalizar_dados():
for arquivo in ["arquivo_encript.txt","palavras.txt"]:
with open(arquivo,"w") as arquivo:
arquivo.write("")
def verificacao_de_continuar():
continuar = int(input("\nDeseja continuar? \n1 - Sim\n2 - Não\n"))
if continuar == 2:
return True
return False
def gravar_dados_cript(dados):
with open("arquivo_encript.txt","a") as arquivo:
arquivo.write("{} {}\n".format(dados[0],dados[1]))
def gravar_palavra(dados):
with open("palavras.txt","a") as arquivo:
arquivo.write("{}\n".format(dados))
def encriptar(frase):
nova_frase = ""
for indice, caractere in enumerate(frase):
if caractere.lower() in vogais:
gravar_dados_cript([caractere, indice])
else:
nova_frase += caractere
return nova_frase
def decriptar(frase,dados_decript):
frase = list(frase)
for indice, letra in dados_decript:
frase.insert(int(indice),letra)
return "".join(frase)
while True:
normalizar_dados()
print("O que deseja fazer? ")
opcao = int(input("1 - Encriptar \n2 - Decriptar \n"))
limpar_console()
if int(opcao) == 1:
frase = str(input("Digite sua frase: "))
gravar_palavra(frase)
encriptado = encriptar(frase)
print("Frase encriptada: "+ encriptado)
if verificacao_de_continuar():
break
else:
limpar_console()
if int(opcao) == 2:
# Ler a sequência das vogais com suas posições e a frase encriptada
# TO-DO , usar arquivo csv ou sqlite para armazenar.
dados = []
frase = str(input("Digite a frase encriptada: "))
limpar_console()
while True:
letra = str(input("Digite a vogal desejada: "))
posicao = int(input("Qual a posição dessa vogal na frase: ".format(letra)))
dados.append((posicao,letra))
limpar_console()
if verificacao_de_continuar():
break
else:
limpar_console()
limpar_console()
frase_decriptada = decriptar(frase,dados)
print("A frase completa é : {}".format(frase_decriptada))
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment