6
менные, выражения. Операторы циклов и ветвления. Итерационные циклы. Вложенные циклы. Сложные типы данных: массивы, записи, файлы. Подпрограммы. Программирование рекурсивных алгоритмов. Модули.
Тема 9. Локальные и глобальные сети ЭВМ
Сетевые технологии обработки данных. Основы компьютерной коммуникации. Принципы построения сетей. Компьютерные коммуникации и коммуникационное оборудование. Сетевой сервис. Сетевые стандарты. Программы для работы в сети Интернет.
Тема 10. Основы защиты информации
Методы защиты информации. Информационная безопасность и ее составляющие. Антивирусные средства. Классификация и характеристики компьютерных вирусов. Методы защиты от компьютерных вирусов.
2. Основные структуры алгоритмов
Суть решения практически любой задачи состоит в переходе от имеющихся данных к искомому результату. Последовательность определенных действий, приводящих к конечному результату, обычно называют алгоритмом. Поскольку в данном случае исполнителем является автоматическое устройство – ЭВМ, то это накладывает на запись алгоритма ряд требований, называемых свойствами алгоритма:
–дискретность – возможность разделить алгоритм на отдельные части;
–определённость (детерминированность) – алгоритм должен быть точным и однозначно понимаемым исполнителем;
–массовость – применимость алгоритма к задачам данного типа, для множества допустимых значений исходных данных;
–результативность – алгоритмический процесс должен быть направлен на получение искомого результата;
–конечность – алгоритм должен заканчиваться за конечное число шагов. Таким образом, алгоритм – это точное предписание по выполнению некото-
рого процесса обработки данных, который через конечное число шагов приводит к решению задачи данного типа для любых допустимых вариантов исходных данных.
Для достижения указанных свойств при разработке алгоритмов придерживаются особой методики, называемой структурным подходом. При структурном подходе к конструированию алгоритмов алгоритмы как бы «собираются» из фиксированного множества базовых конструкций. Рассмотрим основные определения и способы образования этих конструкций в схемах алгоритмов.
7
Произвольная последовательность операторов, имеющая единственный вход и единственный выход, называется операцией. Графически операция изображается в виде прямоугольника, в который входит и из которого выходит одна линия управления.
Действие, описывающее условный переход к выполнению одной из двух операций, называется развилкой. Графически развилка обозначается в виде ромба, в который входит одна линия управления, а выходят две.
Из операций и развилок строятся базовые конструкции: следование, ветв-
ление, цикл. Применяя только эти три конструкции, можно реализовать алгоритм решения любой задачи.
Конструкция, представляющая собой последовательное выполнение двух или более операций, называется следованием.
Конструкция, состоящая из развилки и двух операций, называется ветвлением. Одна из операций может отсутствовать.
8
Конструкция цикл предусматривает неоднократное выполнение одной и той же последовательности действий. Характерным для циклических процессов является наличие параметра цикла – переменной, для которой известно начальное значение, конечное значение и закон её изменения. Конструкции следование, ветвление и цикл можно представить как операции, так как они имеют единственный вход и единственный выход. Произвольную последовательность операций можно представить как одну операцию.
Схема циклического процесса
Блок задания начальных условий
Проверка условия окончания цикла
Тело цикла
Изменение параметра цикла
Прежде чем писать программу (кодировать алгоритм), начинающему программисту необходимо составить схему алгоритма (в особенности, если требуется использовать цикл). Составление такой схемы предполагает 4 этапа.
9
1 этап. Определение параметра цикла. (Параметр цикла – это переменная, для которой известны начальное значение, конечное значение, закон изменения). При этом возможны 2 варианта:
а) известно количество повторений цикла. Например, обработать последовательность N целых чисел. В этом случае в качестве параметра цикла используется переменная типа счетчик I .
начальное значение параметра цикла равно 1;
конечное значение параметра цикла равно N;
закон изменения параметра цикла I = I +1;
б) неизвестно сколько раз будет выполняться цикл, но известно условие окончания, например, обработать последовательность целых чисел, заканчивающуюся заданным числом . В этом случае в качестве параметра цикла используется переменная A – само обрабатываемое значение;
начальное значение параметра цикла – первое число (вводится);
конечное значение параметра цикла (например, число равное нулю);
закон изменения параметра цикла – ввод нового числа.
2 этап. Схема циклического процесса в общем виде ( смотри схему, приведённую выше).
3 этап. Заполнение блоков схемы, связанных с параметром цикла:
а) |
б) |
|
|
|
|
|
I = I+1 |
A |
|
|
|
I n |
A<>0 |
Т. Ц. |
|
Т. Ц. |
|
|
|
I = I + 1 |
А |
|
|
Блок ввода (вывода) в схемах обозначается параллелограммом. На языке Паскаль эти схемы описываются операторами цикла: а) б)
|
10 |
|
READ ( A ); |
FOR I := 1 TO N DO |
WHILE A<>0 DO |
Т. Ц. – тело цикла |
BEGIN |
|
Т. Ц. |
|
READ ( A ); |
|
END; |
4 этап. Доработка схемы – реализация тела цикла, дополнение блока начальных значений. Такой поэтапный подход к реализации алгоритма позволяет сосредоточить всё своё внимание на конкретном действии.
Вязыке Паскаль количество базовых конструкций увеличено до шести, это:
-следование;
-ветвление;
-цикл с предусловием;
-цикл с постусловием;
-цикл с параметром;
-вариант.
Пример 1. Задана последовательность n-целых чисел. Определите среднее арифметическое отрицательных чисел (сумма/ количество) (см. вариант а), поскольку заранее известно количество повторений цикла, параметр цикла – переменная типа счётчик I.
I=1
I<=n
Т.Ц.
Схема циклического процесса с заполненными блоками параметра цикла
I=I+1