ТОМСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ
СИСТЕМ УПРАВЛЕНИЯ И РАДИОЭЛЕКТРОНИКИ (ТУСУР)
дистанционная форма обучения
Кафедра автоматизированных систем управления (АСУ)
Программирование
Курсовой проект
«шифровка и дешифровка текста»
__________________________________________
(Фамилия Имя Отчество)
(шифр)
(почтовый адрес)
Дата выполнения работы ___________________
Оценка ___________________
И.О.Фамилия преподавателя ___________________
Подпись преподавателя ___________________
СОДЕРЖАНИЕ:
Содержание………………………………………………………………....стр.2
Введение…………………………………………………………………….стр. 3
Постановка задачи………………………………………………………...стр. 3
Используемые методы…………………………………………………….стр. 3
Описание алгоритма программы………………………………………..стр. 3
Описание входных и выходных данных………………………………..стр. 8
Заключение…………………………………………………………………стр. 8
Список литературы………………………………………………………..стр. 9
Приложение 1. Листинг программы……………………………………стр. 10
Приложение 2. Результаты работы……………………………………..стр. 13
Введение.
Целью данного курсового проекта является закрепление полученных знаний по разработке алгоритмов на персональном компьютере в среде Турбо Паскаль.
В курсовом проекте рассматривается работа программы для шифровки и дешифровки текста.
Постановка задачи.
Необходимо написать программу, которая будет шифровать и дешифровать текст. При этом программа должна брать исходный текст из файла, а результат сохранять в другом файле. Также необходимо создать «дружественный» интерфейс, для упрощения работы с программой конечного пользователя.
Используемые методы.
В программе используется следующий алгоритм шифрования: с помощью команды ORD каждый символ текста будет преобразован в его числовой код, но при этом еще будет использоваться ключ. Ключ будет задаваться пользователем и может содержать набор букв, чисел и символов. Каждый символ ключя будет декодирован в числовое значение, и алгебраическая сумма всех этих чисел будет прибавлена к имеющемуся значению зашифрованного знака в тексте. И так - для каждой буквы шифруемого текста, между которыми добавятся пробелы, иначе декодер примет множество символов, записанных в цифровом виде, за одно большое многозначное число и ничего не переведет.
При декодировании текста числовые значения переведутся в символьные при помощи команды CHR, но не зная ключя дешифровать такой текст будет достаточно сложно.
Описание алгоритма программы.
Программа Crypter . В программе используются следующие функции и процедуры:
Функция Password (FUNCTION Password ( Psw : string ): integer ; ): преобразует каждый символ, введенного пользователем ключя, в его числовой код и находит алгебраическую сумму этих чисел. В данной функции используются следующие переменные:
· строковая переменная Psw – при вызове функции ей передается ключ введенный пользователем с клавиатуры, именно это значение и присваивается данной переменной
· переменные i , res – целого типа служат для: переменная i необходима для работы цикла, а в переменную res будет записываться результат работы цикла.
Переменной res присваиваем значение равное 0. Для того, чтобы перевести каждый символ ключа в его числовой код создадим цикл размером от 1 до количества символов в ключе (данное значение мы получим при помощи команды length ( psw ) данная команда возвращает количество символов в строке). Затем в этом цикле с помощью команды ord ( psw [ i ]) найдем числовые коды всех символов ключа, сложим их и присваиваем полученное значение функции Password .
FUNCTION Password(Psw: string): integer;
VAR i,res: integer;
BEGIN
res:=0;
for i:=1 to length(psw) do res:=res+ord(psw[i]);
Password:=res;
END;
Функция Crypt (FUNCTION Crypt(CryptStr: string): string; ): функциядляшифрованиятекста. При вызове данной функции ей передается текст который необходимо шифровать, этот текст присваивается переменной CryptStr . В данной функции созданы следующие внутренние переменные необходимые для ее работы:
· переменные s , s 1 – строкового типа. В переменную s 1 будет записываться результат работы. Переменная s будет содержать в себе значение первого символа строки CryptStr
· переменные i , rez – целого типа. Переменная i необходима для работы цикла. Переменная rez будет содержать числовое значение символа находящегося в s .
Переменной s 1 присваиваем пустое значение. Создаем цикл от 1 до количества символов в тексте содержащемся в переменной CryptStr (это значение мы получим выполнив команду length
Наверняка у вас есть товары или услуги, продажа которых приносит вам максимальную прибыль. Для быстрого старта в сети вам необходимо создание посадочной страницы (одностраничного сайта), на которой будет размещена информация о маржинальных товарах/услугах интернет магазина. За 8 лет опыта разработки конверсионных страниц мы выработали оптимальную структуру, которая позволит привлекать через landing page больше продаж. На такую структуру «одевается» ваш контент — фирменный стиль, тексты, фотографии, уникальные торговые предложения, после чего страница выходит в свет. Разработка лендинга и запуск в сети — до 7 рабочих дней. Стоит отметить, что в разработку самой посадочной страницы входит и написание копирайтером продающих текстов для вашего бизнеса, чтобы каждый посетитель страницы захотел совершить покупку именно у вас. Результат: качественно разработаная продающая посадочная страница, которая готова приносить вам новых клиентов.