Программа на языке Turbo Pascal для шифрования данных с помощью шифра Тритемиуса. Входные, выходные данные. Схема алгоритма и текст программы. Порядок ввода исходных данных и описание получаемых результатов. Тестовых задания и анализ их функционирования.
Аннотация к работе
Составить программу на языке Turbo Pascal для шифрования данных с помощью шифра Тритемиуса(расширение кода Цезаря).Выглядит это так. Кодовая буква получается как остаток от деления суммы номера буквы кодируемого текста и ключевого слова на число 31 например (ключевое слово bc) a b c d e f k 00 01 02 03 04 05 b c b c b cЗатем задается текст для шифрования(дешифрования, в зависимости от выбранного меню) вручную, либо указанием имени файла с текстом.Программа организована цельным текстом, пошагово. Программа выполняет следующие действия:-строит графическое оформление;mas=array[1..15] of string - массив ,куда заносятся символы ключевого слова: mas1= array[1..230] of string - массив строкового типа для введенного текста с,с1 - переменные символьного типа для считывания с клавиатуры символов(либо из файла);; keyword,text,otvet, imyafaila - переменные строкового типа;в них заносится ключевое слово, текст для шифрования, получившийся (де)шифрованный текст, и имя файла для дальнейшей работы с ним; kk - переменная используется для построения (де)шифрованного текста f,f2,f3 - файлы символьного типа для сохранения(считывания)данных function proverka - функция для проверки вводимого текста.if ord(c)27 then {если первый символ не клавиша Esc} if ord(c)=13 then begin enter:=false;writeln("Keyword is not entered.Please enter");end else begin keyword:=keyword c;h:=proverka1(c); until (ord(c)=13) or (ord(c)=27) or (l=16); {продолжаем ввод пока не нажат Enter} if ord(c)27 then begin if (keyword=" ") then begin probel:=false;writeln("Keyword is not entered.Please enter");end; if ord(c)27 then if ord(c)=13 then begin enter:=false;writeln("Text is not entered.Please enter");end else begin text:=text c;h:=proverka1(c); if ord(c)27 then begin if (text=" ") then begin probel:=false;writeln("Text is not entered.Please enter");end; if ord(c1)27 then if ord(c1)=13 then begin enter:=false;writeln("Filename is not entered.Please enter");end else begin imyafaila:=imyafaila c1;h:=proverka1(c1);-программа выдает меню пользователю; -после входа в меню шифровки(дешифровки) запрашивает ключевое слово для шифрования, длина которого не должна быть превышать 15 символов; -если слово не введено - выдает соответствующее сообщение и просит ввести его; -если длина ключевого слова не соответствует условию, программа выдает соответствующее сообщение и просит ввести заново;2 Подменю шифровки. После ввода ключевого слова предлагается два режима ввода текста - вручную либо из файла Рис.2.
План
Содержание
1. Описание применения
1.1 Описание задачи и метода ее решения
1.2 Входные и выходные данные
2. Описание программы
2.1 Структура программы
2.2 Структуры используемых данных
2.3 Схема алгоритма
2.4.Текст программы
2.5 Порядок ввода исходных данных и описание получаемых результатов
2.6 Описание тестовых заданий и анализ правильности функционирования
3. Литература
1. Описание применения
1.1 Описание задачи и метода ее решения
Список литературы
1 Прайс Д. Программирование на языке Паскаль: Практическое руководство. Перевод с англ.-М:.Мир,1987.-232с.;
2. Фаронов В.В. Ф24 Турбо Паскаль(в 3-х экземплярах).Кн.3.Практика программирования. Часть 1.-М.:Учебно-инженерный центр «МВТУ - ФЕС ТО ДИДАКТИК»,1993.-238с.
3. Перминов О.Н. Программирование на языке Паскаль. - М.:Радио и связь,1989.-224 с. 128 с.
4. Грогоно П. Программирование на языке Паскаль: Пер. с англ./Под ред. Д.Б. Подшивалова. - М.: Мир, 1985. - 392 с.