Лабораторная работа
Время выполнения
30-90 минут
Уровень сложности
Высокий
Предварительные требования
Модуль 1.11.1.1, Модуль 1.11.1.2
Цели
- улучшение навыков учащегося в работе со строками;
- преобразование символов в код ASCII и наоборот.
Сценарий
Вы уже знакомы с шифром Цезаря, и поэтому мы хотим, чтобы Вы улучшили код, который мы недавно Вам показывали.
Исходный шифр Цезаря сдвигает каждый символ на один: a становится b, z становится a, и так далее. Давайте сделаем его немного сложнее и позволим смещенному значению выйти из диапазона 1-25 включительно.
Кроме того, пусть код сохраняет регистр букв (строчные буквы останутся строчными), а все неалфавитные символы должны остаться без изменений.
Ваша задача - написать программу, которая:
- запрашивает у пользователя строку которою надо зашифровать;
- запрашивает у пользователя значение сдвига (целое число из диапазона 1-25 - примечание: Вы должны заставить пользователя ввести действительное значение сдвига (не сдавайтесь и не позволяйте некорректным данным обмануть Вас);
- распечатывает закодированный текст.
Протестируйте свой код, используя предоставленные нами данные.
Тестовые данные
Пример ввода:
abcxyzABCxyz 123
2
Пример вывода:
cdezabCDEzab 123
Пример ввода:
The die is cast
25
Пример вывода:
Sgd chd hr bzrs