Cifra de César com lista
Publicado por Bryan Brito (última atualização em 06/06/2016)
[ Hits: 11.355 ]
Homepage: .
Estou estudando Python na faculdade e achei que o melhor método seria resolver um problema mais amplo do que somente as listas de exercícios.
Como estou estudando lista, quis tentar fazer com lista, já que não encontrei nada em pesquisa por aí, somente vi com classes e algum mais avançados do que eu me encontro no momento.
Enfim, espero críticas construtivas. ;D
#!/usr/bin/env python # -*- coding:UTF-8 -*- #Cifra de César com lista. alfabeto = ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z'] nome = list(input('Digite o nome: ')) salto = int(input('Valor do salto: ')) cont = 0 lista = [] cifra = [] while cont < salto: #Insere o valor 0, na posição 0 da lista alfabeto. cont += 1 alfabeto.insert(0,0) for i in range(len(nome)): #Compara os caracteres inserido com a lista alfabeto atualizada com o salto e armazena o valor na lista. for j in range(len(alfabeto)): if nome[i] == alfabeto[j]: lista.append(j) while cont != 0: #Remove os valores 0 inseridos para poder imprimir a cifra. cont -= 1 alfabeto.remove(0) for n in range(len(lista)): for m in range(len(alfabeto)): if lista[n] > 25: #Se o valor armazenado na lista for maior que 25 ele simplesmente não e identificado, assim a lista se "repete". lista[n] -= 25 elif lista[n] == m: cifra.append(alfabeto[m]) print(''.join(cifra)) #Apresenta a lista como uma string.
Mini-dicionário de termos em Python e PyQT
Script voltado a resolução da equação de estado dos gases reais
Armazenando a senha de sua carteira Bitcoin de forma segura no Linux
Enviar mensagem ao usuário trabalhando com as opções do php.ini
Meu Fork do Plugin de Integração do CVS para o KDevelop
Compartilhando a tela do Computador no Celular via Deskreen
Como Configurar um Túnel SSH Reverso para Acessar Sua Máquina Local a Partir de uma Máquina Remota
Encontre seus arquivos facilmente com o Drill
Mouse Logitech MX Ergo Advanced Wireless Trackball no Linux
Compartilhamento de Rede com samba em modo Público/Anônimo de forma simples, rápido e fácil
Cups: Mapear/listar todas as impressoras de outro Servidor CUPS de forma rápida e fácil
Não consigo instalar o WineHQ no meu notebook vaio FE15 (Debian) (7)