Pular para o conteúdo

Cifra de César com lista

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
Bryan Brito Bhyan
Hits: 11.851 Categoria: Python Subcategoria: Introdução
  • Download
  • Nova versão
  • Indicar
  • Denunciar
O Viva o Linux depende da receita de anúncios para se manter. Ative os cookies aqui para nos patrocinar.
Não conseguimos carregar os anúncios. Se usa bloqueador, considere liberar o Viva o Linux para nos patrocinar.

Descrição

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
Download cifraCesar.py Enviar nova versão
O Viva o Linux depende da receita de anúncios para se manter. Ative os cookies aqui para nos patrocinar.
Não conseguimos carregar os anúncios. Se usa bloqueador, considere liberar o Viva o Linux para nos patrocinar.

Esconder código-fonte

#!/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.
O Viva o Linux depende da receita de anúncios para se manter. Ative os cookies aqui para nos patrocinar.
Não conseguimos carregar os anúncios. Se usa bloqueador, considere liberar o Viva o Linux para nos patrocinar.

Brincando com Hexadecimais

Conversor entre as moedas real e dolar

Os lados de um triângulo

Cálculo de Números Perfeitos

Calculadora bastante simples.

#1 Comentário enviado por Bhyan em 07/06/2016 - 02:08h
Uma pequena correção que só me veio agora, a linha 24 apresenta uma endentação incorreta, para corrigir apenas precisa deixar o elif na mesma coluna que o if acima.

Contribuir com comentário

Entre na sua conta para comentar.