Выбор варианта: номер в списке группы mod кол-во вариантов
Вариант 1. Шифр Цезаря
Задачи:
1. Написать функцию, которая будет принимать на вход открытый текст и сдвиг, а
возвращать зашифрованный текст, полученный путем сдвига символов алфавита на указанное количество позиций.
2. Провести ввод и обработку текста: обеспечить ввод открытого и зашифрованного
текста с клавиатуры или из файла. Учесть возможные пробелы, цифры и знаки пунктуации.
3. Обработать ошибки: реализовать обработку возможных ошибок, таких как
некорректный ввод текста или сдвига.
4. Реализация функции расшифрования: разработать функцию для расшифрования
зашифрованного текста с использованием обратного сдвига символов.
5. Протестировать алгоритм: протестировать программу на различных примерах
текстов и сдвигов для проверки корректности шифрования и расшифрования. Запомнить тестовые данные и результаты, отобразить их в отчете по лабораторной работе.
6. Подготовить отчет к программе, включая описание функций, алгоритмов и
основных этапов шифрования и дешифрования. Обеспечить наличие комментариев в коде.
Дополнительная задача.
7. Применение шифра к разным алфавитам: дать возможность выбора алфавита
(например, английский или русский), а также обеспечить сдвиг символов в пределах выбранного алфавита. Вариант 2. Шифр Сцитала Цель работы: разработать программу на языке программирования для шифрования и дешифрования текстов с использованием шифра Сцитала.
Задачи:
1. Разработка функции шифрования: написать функцию, которая будет принимать на
вход открытый текст и количество столбцов, а возвращать зашифрованный текст в виде "сциталы" - размещения символов по столбцам и чтения сверху вниз.
2. Ввод и обработка текста: обеспечить ввод открытого и зашифрованного текста с
клавиатуры или из файла. Учтите возможные пробелы и знаки пунктуации.
3. Обработка ошибок: реализовать обработку возможных ошибок, таких как
некорректный ввод текста или числа столбцов.
4. Разработка функции расшифрования: разработать функцию для расшифрования
зашифрованного текста с использованием обратного размещения символов по столбцам.
5. Протестировать алгоритм: протестировать программу на различных примерах
текстов и сдвигов для проверки корректности шифрования и расшифрования. Запомнить тестовые данные и результаты, отобразить их в отчете по лабораторной работе.
6. Отчет и комментарии: подготовить отчет к программе, включая описание функций,
алгоритмов и основных этапов шифрования и дешифрования. Обеспечить наличие комментариев в коде.
Дополнительная задача.
8. Применение шифра к разным алфавитам: дать возможность выбора алфавита
(например, английский или русский), а также обеспечить сдвиг символов в пределах выбранного алфавита.