0votos

Clave Murcielago en Haskell

por josejuan hace 1 año

Se generaliza el "cifrado" donde "MURCIELAGO" es la contraseña y "0123456789" es el ruido de encriptación.

Convertir cualquier frase al código con clave murciélago.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
import Data.Maybe 
import Data.Char 
import Control.Arrow 
 
trans :: String ->String ->(String ->String) 
trans xs ys = map (\c ->c `fromMaybe` lookup c (zip xs ys)) 
 
cypher :: String ->String ->(String ->String, String ->String) 
cypher noise password = (trans noise password, trans password noise) 
 
 
-- Por ejemplo 
(fromMurcielago, toMurcielago) = cypher "0123456789" "murcielago" 
 
-- O si `letter case` no importa 
(fromMurcielago', toMurcielago') = second (. map toLower) $ cypher "0123456789" "murcielago" 

Comenta la solución

Tienes que identificarte para poder publicar tu comentario.