Много малки деца си измислят и използват супер тайни езици, за да крият информация и объркват родителите си. По всяка вероятност всеки може да се сети за поне няколко такива (например пилешки говор на български); явлението е толкова разпространено, че Wikipedia дори има списък на най-известните такива езици.
Това е Rövarspråket, шведски вариант на тази игра, в превод езика на разбойниците. Rövarspråket е доста прост - взимате нормална дума, удвоявате всяка съгласна и добавяте o помежду им. Така съгласната b
става bob
, r
- ror
и т.н. Гласните и пунктуацията остават непроменени.
Напишете програма, коята кодира низ нормален текст на тайния Rövarspråket.
Вход:
I'm speaking Robber's language!
Изход:
I'mom sospopeakokinongog Rorobobboberor'sos lolanongoguagoge!
Уверете се, че програмата ви работи правилно с главни букви. Така например Hello
трябва да се преведе до Hohelollolo
, а не HoHelollolо
. Вижте функцията toLower
в модула Data.Char
и как може да я импортирате.
Напишете функция, която декодира низ обратно към нормален език (допуснете, че даденият текст е във валиден Rövarspråket). Замислете се как бихте имплементирали и използвали функция dropN
, която пропуска първите n символа от низ.
След като сте разкрили една шведска тайна, е време да преминете към следващата - Surströmming (чудя се това дали изобщо да го има).