Для Вашего удобства мы используем файлы cookie. Используя наш Сервис, Вы соглашаетесь с политикой конфиденциальности, определениями и политикой AML & KYC
Student24
Student24
Проект размещён незарегистрир. Пользователем

Шифр Виженера на языке Haskell

Номер
#34259
Бюджет
Не указан
Уникальность
Не указана
Детали
Шифр Виженера – это обобщение шифра Цезаря. Ключ в шифре Виженера – это конечная последовательность алфавитных сдвигов, которые циклически повторяются при проходе по символам сообщения. Шифр Цезаря – это шифр Виженера с длиной ключа 1.

На языке Haskell, реализуйте функцию

vigenere :: [Char] -> [Int] -> String -> String
vigenere alphabet key message = undefined
принимающую алфавит (в виде строки), ключ (в виде списка целых чисел – сдвигов) и сообщение (в виде строки) и шифрующее его. Учтите, что сдвиги могут быть отрицательными.

Если в сообщении встречается символ, не входящий в алфавит, пропускайте его.

Указание: используйте функции cycle, zipWith, elemIndex, оператор (!!), и списочные включения.

Реализуйте на основе функции vigenere обратную функцию.
Нужна работа под заказ?
Оставьте бесплатную заявку на оценку Вашей работы и начните получать предложения от Авторов прямо сейчас!
Оставить заявку
Нужна похожая работа?
Поищите подходящую работу в Магазине готовых работ!
Перейти в Магазин

Отзывы о похожих работах

4.87 из 5 ★★★★★ На основе более 12 000 оценок на сайте

Похожие лабораторные работы

Нужна похожая работа?

Разместите заявку бесплатно — первые предложения от экспертов поступят в течение 10 минут. Без регистрации, без предоплаты.
★ 4.87 из 5 12 000+ оценок 30 000+ проектов 500+ экспертов

Виды выполняемых работ