Cifra de César com lista
Publicado por Bryan Brito (última atualização em 06/06/2016)
[ Hits: 11.109 ]
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.
Comparando dois números e retornando o valor do maior
Sequência de Fibonacci até determinado número
Atenção a quem posta conteúdo de dicas, scripts e tal (1)
Manutenção de sistemas Linux Debian e derivados com apt-get, apt, aptitude e dpkg
Melhorando o tempo de boot do Fedora e outras distribuições
Como instalar as extensões Dash To Dock e Hide Top Bar no Gnome 45/46
Como Atualizar Fedora 39 para 40
Instalar Google Chrome no Debian e derivados
Consertando o erro do Sushi e Wayland no Opensuse Leap 15
Instalar a última versão do PostgreSQL no Lunix mantendo atualizado
Flathub na sua distribuição Linux e comandos básicos de gerenciamento
Erro ao converter string para inteiro (6)
Diferença entre formas de instalar o Samba [RESOLVIDO] (4)
Dongle Bluetooth 5.0 não funciona no Pop Os 22.04 (0)
Como adicionar módulo de saúde da bateria dos notebooks Acer ao kernel... (24)
[Shell Script] Script para desinstalar pacotes desnecessários no OpenSuse
[Shell Script] Script para criar certificados de forma automatizada no OpenVpn
[Shell Script] Conversor de vídeo com opção de legenda
[C/C++] BRT - Bulk Renaming Tool
[Shell Script] Criação de Usuarios , Grupo e instalação do servidor de arquivos samba