Войти Создать аккаунт

Шифровальщик · Шаг 1 из 4

Шифр Виженера

Клуб городских квестов шифрует записки с заданиями. Цезарь — сдвиг всех букв на одно и то же число — команды взламывают за минуту. Поэтому записки шифруют по-виженеровски: у каждой буквы свой сдвиг, а сдвиги по кругу берутся из слова-ключа.

Что сделать

Зашифруйте текст ключом по Виженеру — или расшифруйте, если попросили.

Что приходит

  • tekst — текст записки: русские буквы любого регистра, пробелы, знаки, цифры

  • klyuch — слово-ключ из русских букв, регистр не важен

  • rasshifrovat — True, если текст надо расшифровать; по умолчанию False

Что вернуть

Строку той же длины: буквы сдвинуты по ключу, регистр сохранён, всё остальное — как было.

Допишите функцию vizhener в редакторе справа. Результат верните через return — то, что напечатано, на проверку не влияет.

В проекте

Утилита зовёт vizhener на команды «зашифровать» и «расшифровать», а после взлома — чтобы прочитать шифровку найденным ключом. Решите шаг — и записки начнут шифроваться.

Пример

Ключ «ключ» даёт сдвиги 11, 12, 31, 24 — номера его букв в алфавите с нуля. «п» сдвигается на 11 и становится «ъ», «р» на 12 — «ь», «и» на 31 — «ж», «в» на 24 — «щ», а потом ключ идёт по кругу: «е» снова на 11 — «п», «т» на 12 — «ю».

Тот же пример кодом
Вызов
vizhener("привет", "ключ")
Вернуть
'ъьжщпю'
Ctrl+Enter — проверить

Обсуждение

Вопросов пока нет.

Войдите, чтобы спросить.