Cifra de César com lista
Publicado por Bryan Brito (última atualização em 06/06/2016)
[ Hits: 11.116 ]
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.
Atenção a quem posta conteúdo de dicas, scripts e tal (2)
Criando um gateway de internet com o Debian
Configuração básica do Conky para mostrar informações sobre a sua máquina no Desktop
Aprenda a criar músicas com Inteligência Artificial usando Suno AI
Entendendo o que é URI, URL, URN e conhecendo as diferenças entre POST e GET
Ativando o Modo Noturno via Linha de Comando no GNOME/Wayland
Preparando pendrive com GNU/Linux [Corretamente!]
Instalando Google Chrome no Fedora 40
Habilitando a importação de senhas no Firefox
Como corrigir o erro do VirtualBox travar a máquina virtual em tela cheia
Dificuldade de instalar Apache Office no Zorin17 (1)
Como saber quantas impressões foram feitas pela impressora? (3)
Altera pacote .pkg.tar do Arch Linux (17)