Алгоритм– это последовательность выполнения операций, конечный набор правил, позволяющих чисто механически решать любую конкретную задачу из некоторого класса однотипных задач.
Свойства алгоритма:
1. Массовость – возможность применения одного и того же алгоритма для решения целого класса однотипных задач с различными исходными данными.
2. Детерминированность (Определённость) – процесс применения правил к исходным данным (путь решения задачи) определён однозначно.
3. Понятность – исполнитель знает, что нужно для выполнения этого алгоритма
4. Дискретность – исполнение алгоритма расчленяется на выполнение отдельных шагов, выполнение очередного шага начинается после завершения предыдущего
5. Конечность – Исполнение алгоритма заканчивается после выполнения конечного числа шагов или за конечное время (не закицливается, не "зависает" – останавливается и пр.).
6. Результативность – на каждом шаге процесса известно, что считать результатом процесса
Алгоритм разрабатывается в виде блок-схемы, в каждом элементе которой выполняется одна операция решения задачи. Для обозначения блоков алгоритма используются следующие основные фигуры (рис. 1).
Блок начала и конца программы обозначается овалом или
прямоугольником с округлёнными углами, в блоке могут быть слова Начало, Конец, End, Программа №…, название программы и т.п.
Блоки ввода и вывода данных изображаются параллелограммами, в них возможен текст Ввод, Печать, Вывод, Print и др.
Элементы блок-схемы соединяются между собой стрелками, каждый блок должен иметь свой порядковый номер для организации ссылок и передачи ему управления от других блоков.
Вычислительный блок содержит формулы вычислительного процесса,
Начало и конец программы
Ввод данных и вывод результатов
Вычислительный блок
да нет Блок сравнения
с.5 Ссылка (переход) на другой блок или страницу
Рисунок 1 Основные элементы блок-схемы алгоритма
они могут быть написаны по общим правилам математики (с индексами, показателями степени, дробями, знаками ∑ , ∫ и т.п.). В тексте программы те же формулы должны быть записаны только по правилам языка программирования , т.е. в одну строку. В любом языке программирования допускается только линейная запись выражений, без индексов, показателей степени, много этажных дробей, пределов интегрирования и т.п.
Блок сравнения предназначен для проверки какого-либо условия, имеет два выхода – да и нет (или 1 и 0). Если условие выполняется, управление передаётся другому блоку , если нет, то следующему.
Блок Ссылка указывает номер блока, которому передаётся управление. Если он расположен на другой странице, то и номер страницы.
Алгоритм составляется обязательно для сложных вычислительных процессов, имеющих разветвлённую схему, с многочисленными переходами,
циклами, подпрограммами, модулями и т.д. Для таких процессов сразу составить работающую программу очень трудно, поэтому этап разработки
блок-схемы алгоритма становится необходимым, а затем каждый блок записывается в программе одним (своим) оператором.