Cifra de César com lista
Publicado por Bryan Brito (última atualização em 06/06/2016)
[ Hits: 11.646 ]
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.
Gerador de palpites para Mega Sena (com módulo random)
Como extrair chaves TOTP 2FA a partir de QRCODE (Google Authenticator)
Linux em 2025: Segurança prática para o usuário
Desktop Linux em alta: novos apps, distros e privacidade marcam o sábado
IA chega ao desktop e impulsiona produtividade no mundo Linux
Novos apps de produtividade, avanços em IA e distros em ebulição agitam o universo Linux
Digitando underscore com "shift" + "barra de espaços"
Como ativar a lixeira e recuperar aquivos deletados em um servidor Linux
Como mudar o nome de dispositivos Bluetooth via linha de comando
Problema em SSD ao dar boot LinuxMint LMDE FAYE 64 (1)
Baixar jogos Independentes para Ubuntu [RESOLVIDO] (4)
PIP3 - erro ao instalar módulo do mariadb para o Python (1)
Linux x Plataformas de Trading - um problema (in-)solúvel? (4)