Б6. Понятие алгоритма. Исполнитель алгоритма. Система команд исполнителя (на примере учебного исполнителя). Свойства алгоритма. Способы записи алгоритмов; блок-схемы.

Слово «алгоритм» произошло от имени арабского математика 9 века аль-Хорезми, который сформулировал правила выполнения арифметический действий.

Алгоритм – точное и понятное предписание исполнителю выполнить конечную последовательность команд, приводящую от исходных данных к исходному результату.

Примеры: распорядок дня, порядок приготовления блюда, инструкция и т.д.)

Исполнитель алгоритма – это тот, кто выполняет алгоритм (человек, животное, машина, компьютер).

Система команд исполнителя – это вся совокупность команд, которые исполнитель умеет выполнять (понимает). Алгоритм можно строить только из команд, входящих в систему команд исполнителя.

Например, исполнитель Робот может выполнять команды вперед, назад, влево, вправо, закрасить. Он перемещается по клеточному полю, ограниченному стеной и содержащему стены. Робот не может пройти сквозь стену.

Свойства алгоритма:

1.Результативность (конечность) – возможность получения из исходных данных результата за конечное число шагов. (Например, при выполнении алгоритма сложения 2 чисел должны получить сумму).

2.Массовость – возможность применения алгоритма к большому количеству различных исходных данных. (Например, Можно сложить любые 2 числа, зная алгоритм сложения.)

3.Детерминированность (определенность, точность) – каждая команда должна однозначно определять действие исполнителя.

4.Понятность – команда должна быть записана на понятном компьютеру языке.

5.Дискретность – разбиение алгоритма на отдельные команды.

Способы записи алгоритма:

1) На естественном языке – запись в виде отдельных команд на понятном человеку языке.

2) Графический – на языке блок-схем, с помощью геометрических фигур (овал, прямоугольник, параллелограмм, ромб).

3) На алгоритмическом языке – язык записи алгоритмов, для обучения программированию. Команды записываются на русском языке.

4) На языке программирования - программа. Языки программирования: Basic, Pascal, Си, Visual Basic.

Название Элемент блок-схемы
начало-конец
процесс (действие)
условие
ввод-вывод
цикл

 

Б7.Основные алгоритмические структуры: следование, ветвление, цикл; изображение на блок-схемах. Разбиение задач на подзадачи. Вспомогательные алгоритмы.

Алгоритмические конструкции.Внутри алгоритмов можно выделить группы шагов, отличающиеся внутренней структурой – алгоритмические конструкции.

Основными алгоритмическими конструкциями являются линейная последовательность шагов (или следование), ветвление и цикл.

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

Так выглядит линейный алгоритм на языке блок схем:

Пример: алгоритм включения компьютера:

  1. Включить питание компьютера (нажать кнопку на сетевом фильтре).
  2. Включить монитор, принтер.
  3. Нажать кнопку Power на системном блоке.
  4. Дождаться загрузки операционной системы и появления Рабочего стола.
  5. Приступить к работе.

В этом алгоритме все действия должны выполняться последовательно одно за другим: нельзя приступить к работе если не включено питание или монитор.

 

В алгоритмическую структуру «ветвление» входит условие, в зависимости от истинности условия выполняется та или иная последовательность команд (серий).

Условие – это высказывание, которое может быть истинным или ложным. В условии два числа, две строки, две переменных или строковых выражения сравниваются между собой с использованием операций сравнения (>, <, =, >=, <=).

Неполная форма ветвления
 
 

 

Запись на алгоритмическом языке: ЕслиУсловие То Серия 1   (Если Условие истинно, то выполняется Серия 1, если Условие ложно, то ничего не выполняется).   Пример: Если сегодня воскресенье, то в школу идти не надо.
Полная форма ветвления
 
 

 

Запись на алгоритмическом языке: ЕслиУсловие То Серия 1 Иначе Серия 2   (Если Условие истинно, то выполняется Серия 1, если Условие ложно, то выполняется Серия 2).   Пример: Если на улице дождь, то возьми с собой зонт, иначе иди без зонта.

 

В алгоритмические структуры цикл входит серия команд, выполняемая многократно. Такая последовательность команд называется телом цикла.

Циклические алгоритмические структуры бывают двух типов:

  • циклы со счетчиком, в которых тело цикла выполняется определенное количество раз;
  • циклы с условием, в которых тело цикла выполняется до тех пор, пока выполняется условие.

Цикл со счетчиком – используется когда заранее известно какое число повторений тела цикла необходимо выполнить.

 
 

 

 

Запись на алгоритмическом языке: ДляСчетчик От НачЗначДо КонЗнач повторять нц Тело цикла кц   Пример: Повторять 10 раз Застегни пуговицу  

Циклы с условием – используется когда необходимо повторять тело цикла, но заранее неизвестно какое количество раз это надо сделать.