СОДЕРЖАНИЕ
 1 Понятие алгоритма и его характеристики.
 2 Формы представления алгоритмов.
 3 Основные алгоритмические структуры.
 4. Структурное программирование.
 5. Событийно-ориентированное программирование
 6. Объектно-ориентированное программирование. 
     1. Понятие алгоритма и его характеристики
 Подготовка задачи для решения на ЭВМ состоит из нескольких этапов:
               формулировка условия задачи;
               выбор метода ее решения (например, численного для математических задач);
               разработка схемы алгоритма;
               составление программы на алгоритмическом языке.
 Алгоритм - это система правил, описывающая последовательность действий, которые необходимо выполнить, чтобы решить задачу [3]. Алгоритм - некоторая последовательность предписаний (правил), однозначно определяющих процесс преобразования исходных и промежуточных данных в результат решения задачи.
 Понятие алгоритма в информатике является фундаментальным, таким, каким является понятие точки, прямой и плоскости в геометрии, множества - в математике, пространства и времени - в физике, вещества - в химии. Как и для всякого фундаментального понятия, для алгоритма невозможно дать абсолютно строгого определения. Поэтому формулировки, приведенные выше, лишь приближенно описывают алгоритм.
 Основные характеристики алгоритма: дискретность, определенность, результативность, массовость.
 Дискретность означает, что выполнение алгоритма разбивается на последовательность законченных действий - шагов. Каждое действие должно быть завершено исполнителем прежде, чем он перейдет к выполнению следующего. Значения величин в каждом шаге алгоритма получаются по определенным правилам из значения величин, определенных на предшествующем шаге.
 Под определенностью понимается то обстоятельство, что каждое правило алгоритма настолько четко и однозначно, что значения величин, получаемые на каком-либо шаге, однозначно определяются значениями величин, полученными на предыдущем шаге, и при этом точно известно, какой шаг будет выполнен следующим.
 Результативность (или конечность) алгоритма предполагает, что его исполнение сводится к выполнению конечного числа действий и всегда приводит к некоторому результату. В качестве одного из возможных результатов является установление того факта, что задача не имеет решений.
 Под массовостью понимается, что алгоритм решения задачи разрабатывается в общем виде так, чтобы его можно было применить для целого класса задач, различающихся лишь наборами исходных данных. В этом свойстве и заключена основная практическая ценность алгоритма.
     2. Формы представления алгоритмов
 Существуют различные формы представления алгоритмов:
 ·   словесное описание алгоритма на естественном языке (вербальная форма);
 ·   построчная запись алгоритма;
 ·   схема алгоритма;
 ·   запись на каком-либо языке программирования.
 Рассмотрим особенности первых двух форм на примере алгоритма Евклида - нахождения наибольшего общего делителя (НОД) для двух целых положительных чисел.
 Словесное описание имеет минимум ограничений и является наименее формализованным.  ............