Bueno, este cifrado fue realizado con fin de resolver un reto de programación en [Enlace externo eliminado para invitados].

Código :
# Cifrado Morse.py - Sanko
# -*- coding: utf-8 -*- 

class cif_morse():
	
	def __init__(self):
		self.table = {'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':'--..',
					  'Ä':'.-.-', 'Ö':'---.', 'Ü':'..--', '0':'-----',
					  '1':'.----', '2':'..---', '3':'...--', '4':'....-',
					  '5':'.....', '6':'-....', '7':'--...', '8':'---..',
					  '9':'----.', '.':'.-.-.-', ',':'--..--', '?':'..--..',
					  '!':'..--.', ':':'---...', '"':'.-..-.', "'":".----.",
					  '=':'-...-', ' ':' '}
		
		self.table2 = {}
		
		# Inicializar desde aqui
		self.__encode('Sanko os saluda')
		self.__decode('... .- -. -.- ---   --- ...   ... .- .-.. ..- -.. .-')	


		
	def __encode(self, text):
		self.text = text
		self.encoded = ''
		
		if self.text != '':
			self.text = self.text.upper()
			
			for i in self.text:
				self.encoded += self.table[i] + ' '
				
			print "Encoded: %s"% self.encoded
			

		
	def __decode(self, en_text):		
		self.en_text = en_text
		self.decoded = ''
		
		for i in self.table:
			self.table2[self.table[i]] = i
		
		self.en_text = self.en_text.split(' ')

		for x in self.en_text:
			try:
				self.en_text.remove('')
			except:
				pass
			self.decoded += self.table2[x]
			
		print "Decoded: %s"% self.decoded
						
cif_morse()

Imágen :
Imagen


Saludos
Responder

Volver a “Fuentes”