Федеральное агентство по образованию Российской Федерации
Государственное образовательное учреждение высшего профессионального образования
«Южно-Уральский государственный университет»
Факультет «Приборостроительный»
Кафедра «Электронные вычислительные машины»
ПОЯСНИТЕЛЬНАЯ ЗАПИСКА
К КУРСОВОЙ РАБОТЕ
«Программирование на языках высокого уровня»
Автор проекта
студент группы
Валимухамматов Рустам Римович
Челябинск 2010г.
Содержание
1. Описание применения
1.1 Описание задачи и метода ее решения
1.2 Входные и выходные данные
2. Описание программы
2.1 Структура программы
2.2 Структуры используемых данных
2.3 Схема алгоритма
2.4.Текст программы
2.5 Порядок ввода исходных данных и описание получаемых результатов
2.6 Описание тестовых заданий и анализ правильности функционирования
3. Литература
1. Описание применения
1.1 Описание задачи и метода ее решения
Составить программу на языке Turbo Pascal для шифрования данных с помощью шифра Тритемиуса(расширение кода Цезаря).Выглядит это так.
Буквы алфавита нумеруются. Затем ключевое слово циклически накладывается на кодируемый текст. Кодовая буква получается как остаток от деления суммы номера буквы кодируемого текста и ключевого слова на число 31 например (ключевое слово bc)
a b c d e f
k 00 01 02 03 04 05
b c b c b c
1 01 02 01 02 01 02
m 01 03 03 05 05 07
kk b d d f f h
Таким образом кодовая комбинация получается bddffh.
Ниже приведена таблица номеров букв:
A – 00; N – 13;
B – 01; O – 14;
C – 02; P – 15;
D – 03; Q – 16;
E – 04; R – 17;
F – 05; S – 18;
G – 06; T – 19;
H – 07; U – 20;
I – 08; V – 21;
J – 09; W – 22;
K – 10; X – 23;
L – 11; Y – 24 ;
M – 12; Z – 25;
1.2 Входные и выходные данные
На вход программе подается ключевое слово. Затем задается текст для шифрования(дешифрования, в зависимости от выбранного меню) вручную, либо указанием имени файла с текстом. Минимальная длина текст и ключевого слово – 1 символ. Максимальная длина ключевого слово – 15 символов, максимальная длина текста, заданного вручную, – 230 символов(при чтении из файла ограничений нету).
На выход программа выдает шифрованный (дешифрованный) текст.
2. Описание программы
2.1 Структура программы
Программа организована цельным текстом, пошагово. Язык интерфейса – английский.
Программа выполняет следующие действия:
-строит графическое оформление;
-предлагает меню из 3-х пунктов;
-после захода в подменю запрашивает ключевое слово(всегда, в независимости от выбранного меню);
-запрашивает текст для (де)шифрования (либо просит ввести имя файла, если чтение происходит оттуда);
-выдает (де)шифрованный текст(либо также исходный, если чтение из файла);
-предлагает продолжить (де)шифрование, либо вернуться в главное меню.
2.2 Структуры используемых данных
mas=array[1..15] of string - массив ,куда заносятся символы ключевого слова:
mas1= array[1..230] of string - массив строкового типа для введенного текста
с,с1 - переменные символьного типа для считывания с клавиатуры символов(либо из файла);;
keyword,text,otvet, imyafaila – переменные строкового типа;в них заносится ключевое слово, текст для шифрования, получившийся (де)шифрованный текст, и имя файла для дальнейшей работы с ним;
h,probel,enter – переменные логического типа, используемые для различных проверок на вводе данных;
kk - переменная используется для построения (де)шифрованного текста
f,f2,f3 - файлы символьного типа для сохранения(считывания)данных
function proverka - функция для проверки вводимого текста. ............