Na cifra Ragbaby, a codificação é feita por uma sequência de chaves e sua posição na palavra em texto claro de uma mensagem.
Crie uma função que receba dois argumentos, key e message, e retorne a mensagem codificada.
Há algumas variações nas regras de cifragem. Uma versão das regras da cifra está descrita abaixo:
message = "This is an example."
key = "cipher"
ragbabyCipher(message, key) ➞ "Urew pu bq rzfsbtj."Etapa 1: Remova as letras duplicadas da chave. Reorganize as letras de A a Z, de modo que a palavra-chave apareça primeiro, seguida pelo restante das letras na ordem habitual.
c i p h e r a b d f g j k l m n o q s t u v w x y zEtapa 2: palavra por palavra, atribua números às letras da mensagem fornecida:
T h i s i s a n e x a m p l e .
1 2 3 4 1 2 1 2 1 2 3 4 5 6 7Etapa 3: Substitua cada letra da palavra pela letra do alfabeto com chave que esteja o número correspondente de posições à direita dela (voltando ao início quando necessário). Mantenha todos os caracteres que não sejam letras na mesma ordem e sem nenhuma alteração.
eMessage = "Urew pu bq rzfsbtj."
// 'u' is 1 place right to 't'
// 'r' is 2 places right to 'h'
// 'e' is 3 places right to 'i' and so on.
// keep the '.' in the same position.Veja os exemplos abaixo para entender melhor:
ragbabyCipher("This is an example.", "cipher") ➞ "Urew pu bq rzfsbtj."
ragbabyCipher("mubashir", "edabit") ➞ "nwccyoke"
ragbabyCipher("mattttt", "eedddabit") ➞ "nighjkl"