МЕНЮ


Фестивали и конкурсы
Семинары
Издания
О МОДНТ
Приглашения
Поздравляем

НАУЧНЫЕ РАБОТЫ


  • Инновационный менеджмент
  • Инвестиции
  • ИГП
  • Земельное право
  • Журналистика
  • Жилищное право
  • Радиоэлектроника
  • Психология
  • Программирование и комп-ры
  • Предпринимательство
  • Право
  • Политология
  • Полиграфия
  • Педагогика
  • Оккультизм и уфология
  • Начертательная геометрия
  • Бухучет управленчучет
  • Биология
  • Бизнес-план
  • Безопасность жизнедеятельности
  • Банковское дело
  • АХД экпред финансы предприятий
  • Аудит
  • Ветеринария
  • Валютные отношения
  • Бухгалтерский учет и аудит
  • Ботаника и сельское хозяйство
  • Биржевое дело
  • Банковское дело
  • Астрономия
  • Архитектура
  • Арбитражный процесс
  • Безопасность жизнедеятельности
  • Административное право
  • Авиация и космонавтика
  • Кулинария
  • Наука и техника
  • Криминология
  • Криминалистика
  • Косметология
  • Коммуникации и связь
  • Кибернетика
  • Исторические личности
  • Информатика
  • Инвестиции
  • по Зоология
  • Журналистика
  • Карта сайта
  • Кодировщик-декодировшик

    Кодировщик-декодировшик

    Министерство образования РФ

    Уральский государственный технический университет -УПИ

    Кафедра "Технология и средства связи"

    ОТЧЁТ

    по учебной практике

    Преподаватель: Петров Р.А.

    Студент: Черепанов К.А.

    Группа: Р-207

    Екатеринбург

    2000

    СОДЕРЖАНИЕ

    1.Задание...............................................................

    ..........................................………...3

    2.Описание

    применения........….....................................................

    .................……….3

    2.1. Назначение

    программы...............................................................

    ..........……….3

    2.2. Условия

    применения.........…....................................................

    ..............………3

    2.3. Описание

    задачи..................…...............................................

    ................……….3

    3.Описание

    программы..................…............................................

    .................………..4

    3.1. Общие

    сведения................................................................

    ................….……….4

    3.2. Функциональное

    назначение..…...........................................................

    ………4

    3.3. Описание логической

    структуры...................................................…………..4

    3.4. Используемые технические

    средства.....................................................….......5

    3.5. Вызов и

    загрузка................................................................

    ....................………..5

    3.6. Входные и выходные

    данные............….................................................………5

    4. Текст

    программы......................................…........................

    .......................………..6

    1.Задание

    Задано число к и последовательность чисел от 1 до к 1......к.

    Необходимо зашифровать литерную последовательность, находящуюся в файле в

    соответствии с введенной последовательностью. Выходные данные записать в

    файл. Например, если к равно 4 и последовательность S3,S2,S4,S1 то символы

    S1,S1,S3,S4 преобразуются в S3,S2,S4,S1. Если количество символов не кратно

    к, то в конце последовательности необходимо добавить пробелы.

    2. Описание применения

    2.1. Назначение программы

    Программа coDec предназначена для шифрации и дешифрации символьного

    массива, находящегося в файле.

    2.2. Условия применения

    Программа предъявляет очень скромные требования к ресурсам

    вычислительной установки. Тем не менее, в случае необходимости использовать

    для компиляции и сборки программы С на машинах типа PC необходимо иметь

    8Мбайт оперативной памяти. Программа в состоянии брать из любого каталога

    файлы и также записывать файлы в произвольную директорию, указанную вами.

    Однако не следует пренебрегать общими принципами шифрации и дешифрации

    информационных данных , то есть воспринимать сей труд как панацею зашиты от

    посторонних лиц. Любая закодированная порция данных может быть с легкостью

    преобразована в исходный текст подбором ключа, путем перестановки литер для

    нахождения логичного варианта.

    3. Описание задачи

    Задача, поставленная на практике, состояла в необходимости набора некоего

    числа к и последовательности 1.....к, и перегруппировке символьного массива

    из одного файла в символьный массив другого файла, в соответствии с раннее

    введенной последовательностью.

    Кодирование достигается следующим образом: из символьного массива файла

    источника последовательно берутся символы и записываются в новый символьный

    массив В[ ] (B[i+1]=c), далее из этого массива происходит также

    последовательно запись в файл, за исключением того, что индексы

    записываемых символов равны последовательности (B[pointer], где pointer

    равен массиву последовательности).

    Декодирование: принцип работы декодирования противоположен кодированию и

    состоит в том, что новому массиву В[ ] с индексами последовательности

    присваиваются считываемые символы (B[pointer]=c), а затем производится

    запись этого массива, но уже с индексами от 1 до к (B[i+1]).

    3. Описание программы

    3.1.Общие сведения

    Программа coDec предназначена для шифрации и дешифрации символьного

    массива, находящегося в файле.

    Для выполнения программы достаточно вычислительной установки типа PC

    с процессором i386 и выше и 8 Мбайт оперативной памяти, оснащенной любой из

    следующих операционных систем: MS DOS (начиная с версии 5.0), Windows 95,

    Windows NT версий 4.0.

    Программа coDec написана на языке Visual C++, реализованном, например,

    в компиляторе MS Developer Studio v.4.2 для операционных систем Windows NT

    и Windows 95.

    3.2. Функциональное назначение

    Программа применяется для шифрования или дешифрации данных из одного

    файла в другой. Однако не всякое сочетание исходных данных позволяет

    получить желаемый результат, например, не рекомендуется загружать *.exe и

    прочие файлы, имеющие в своей структуре помимо текстовых данных,

    спецсимволы, в некоторых случаях воспринимаемые программой как конец файла.

    3.3. Описание логической структуры

    Примечания вида "см. Текст", встречающиеся в этом разделе, означают

    ссылки на документ «Текст программы».

    Описание головной программы

    В Разделе 1 (см. Текст) производится подлключение стандартных

    библиотек компилятора для обеспечения функционирования отдельных операторов

    и всей программы в целом.

    В Разделе 2 (см. Текст) осуществляется описание переменных.

    В Разделе 3 (см. Текст) производится выбор дальнейшего действия

    программы: кодирования (0) или декодирования (1) литерной

    последовательности, содержащейся в исходном файле, в выходной файл.

    Конструкция while (1) обеспечивает постоянное выполнение цикла до тех

    пор, пока не выполнится условие if, которое прерывает его действие

    оператором break.

    В Разделе 4 находится цикл ввода длины кодовой

    последовательности, который автоматически проверяет условие правильности

    введенного значения.

    Сообщение "Error!!! K must be integer from 1 to 10" означает, что введенный

    вами символ не удовлетворяет требованиям и необходимо повторить ввод

    заново.

    В Разделе 5 организован цикл последовательности с проверкой вычисления

    контрольной суммы, путем подсчета введенной суммы и суммы из массива W[ ] с

    последующим сравнением обоих результатов. Если суммы не совпадают, цикл

    повторяется снова, в противном случае выполняется последующий оператор.

    Сообщение " Error!!! Repeat input" говорит о том, что последовательность

    неправильна и необходимо повторить ввод заново.

    Раздел 6 образован для ввода и открытия для чтения исходного файла,

    открытия и записи выходного файла. Литера «r» обозначает, что файл

    открывается для чтения, соответственно «w»-для записи. При открытии

    происходит автоматическая проверка существования в указанной директории

    файла. Если программа не в состоянии найти или открыть его выводиться

    сообщение об ошибке «Error!!! Can't open file» и снова запрашивается имя,

    если же ошибок не найдено выполняется следующее действие-запрос имени файла

    для результатов.

    Раздел 7 предназначен для шифрации данных. Его организация устроена по

    принципу, описанному в разделе 2.3. При этом, если в последней

    последовательности не хватает n символов до к, программа автоматически

    приписывает дополнительные пробелы. Конструкция if (feof(fp)&&i==0) return

    0 - образована для исключения дополнительного цикла, который может

    возникнуть, если количество символов в файле кратно к, в этом случае

    выполняется лишний цикл, приводящий к добавлению дополнительных пробелов и,

    следовательно, увеличению файлов. При достижении конца файла EOF шифрации

    прекращается.

    Раздел 8 Дешифрация и запись в файл-приемник-устроен практически по

    тому же принципу как и в разделе 7.Различия между операциями кодирования и

    декодирования приводятся в подразделе «Описание задачи». Дешифрация также

    прекращается при достижении конца файла.

    Раздел 9 закрывает раннее открытые файлы.

    3.4. Используемые технические средства

    Для выполнения программы достаточно компьютера типа IBM PC с

    процессором i386 и выше и 8 Мбайт оперативной памяти, оснащенной любой из

    следующих операционных систем: MS DOS (начиная с версии 5.0), Windows 95,

    Windows NT версий 4.0.

    3.5. Вызов и загрузка

    Запуск программы происходит путем запуска файла coDec. exe

    3.6 Входные и выходные данные

    Файлы-источники при кодировке по возможности должны быть с расширением

    txt, в то время как файл-приемник может иметь любое. Вызвано это

    причинами, описанными ранее в пункте 3.2. При декодировке ограничений нет.

    4. Текст программы

    // Шифратор-дешифратор

    Раздел №1

    # include

    # include

    # include

    # include

    # include

    # include

    int main ()

    { Раздел

    №2

    FILE *fp,*fp2; / *указатели на поток*/

    int i,k,Sum,Sum_contr,pointer,select;

    int W[]={1,2,3,4,5,6,7,8,9,10}; /*массив проверки*/

    int Y[10]; /*массив для кодовой перестановки*/

    char B[11]; /*массив для перестановленных

    символов*/

    char c; /*переменная для хранения символа*/

    char fname[20], fname2[20]; /*массивы для имен файлов*/

    /* О с н о в н о е т е л о п р о г р а м м ы */

    Раздел №3

    /*Выбор кодирования-декодирования*/

    while (1)

    if ((select==0)

    Раздел №4

    /*Ввод длины кодовой последовательности*/

    while (1)

    {

    printf ("\nInput length of code k(1 to 10) ");

    scanf ("%d", &k);/* ввод десятичного целого*/

    if (k>=1&&k0)

    B[i+1]=' ';

    else

    B[i+1]=c;

    }

    for (i=0;i

    {

    pointer=Y[i];

    putc(B[pointer],fp2);

    }

    if (feof(fp)) break;

    }

    }

    Раздел №8

    /*Дешифрация и запись в файл-приемник*/

    else

    {

    while (1)

    {

    for(i=0;i

    {

    c=getc(fp);

    pointer=Y[i];

    B[pointer]=c;

    }

    if (feof(fp)) break;

    for (i=0;i

    putc(B[i+1],fp2);

    }

    }

    Раздел №9

    /*Закрытие файла источника и приемника*/

    fclose(fp);

    fclose(fp2);

    }


    Приглашения

    09.12.2013 - 16.12.2013

    Международный конкурс хореографического искусства в рамках Международного фестиваля искусств «РОЖДЕСТВЕНСКАЯ АНДОРРА»

    09.12.2013 - 16.12.2013

    Международный конкурс хорового искусства в АНДОРРЕ «РОЖДЕСТВЕНСКАЯ АНДОРРА»




    Copyright © 2012 г.
    При использовании материалов - ссылка на сайт обязательна.