Алгоритм

 

Понятие алгоритма такое же основополагающее для информатики, как и понятие информации. Название "алгоритм" произошло от латинской формы имени величайшего среднеазиатского математика Мухаммеда ибн Муса ал-Хорезми (Alhorithmi), жившего в 783—850 гг. В своей книге "Об индийском счете" он изложил правила записи натуральных чисел с помощью арабских цифр и правила действий над ними "столбиком", знакомые теперь каждому школьнику. В XII веке эта книга была переведена на латынь и получила широкое распространение в Европе.

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

Основными свойствами алгоритма являются:

  • дискретность — представление алгоритма в виде последовательности шагов;
  • массовость — применимость алгоритма к некоторому множеству исходных данных;
  • определенность — за конечное число шагов либо должен быть получен результат, либо доказано его отсутствие;
  • однозначность — при повторном применении алгоритма к тем же исходным данным должен быть получен тот же результат.

На практике наиболее распространены следующие формы представления алгоритмов:

  • словесная (запись на естественном языке);
  • графическая форма (изображения из графических символов);
  • псевдокоды (описания алгоритмов на условном алгоритмическом языке, включающие в себя как элементы языка программирования, так и фразы естественного языка, общепринятые математические обозначения и др.);
  • программная форма (тексты на языках программирования).

При графическом представлении алгоритм изображается в виде последовательности связанных между собой функциональных блоков, каждый из которых соответствует выполнению одного или нескольких действий.

Такое графическое представление называется схемой алгоритма или блок-схемой. В блок-схеме каждому типу действий (вводу исходных данных, вычислению значений выражений, проверке условий, управлению повторением действий, окончанию обработки и т.п.) соответствует геометрическая фигура. Блоки соединяются линиями переходов, определяющими очередность выполнения действий. В таблице приведены основные блоки.

 

Блок Назначение
Начало, конец алгоритма
Ввод значений переменных с клавиатуры
Блок действий, присвоение переменным вычислительных значений
Проверка условия и выбор одного из двух возможных путей дальнейшего решения
Блок цикла
Обращение к подпрограмме
Вывод результатов на печать

 

Алгоритмы можно представлять как некоторые структуры, состоящие из отдельных блоков. Логическая структура любого алгоритма может быть представлена комбинацией трех базовых структур: следование, ветвление, цикл. Характерной особенностью базовых структур является наличие в них одного входа и одного выхода. При разработке блок-схемы допускается делать любые записи внутри блоков, однако эти записи должны содержать достаточно информации для выполнения очередных действий.