У понятия алгоритм существует множество самых разных определений и трактовок, так как это понятие достаточно широкое и используется в различных областях науки, техники и повседневной жизни.
Исключением не является и программирование, где понятие алгоритм является одним из базовых.
Алгоритм: суть и назначение
Алгоритм (в программировании) − это набор последовательных инструкций, которые описывают порядок поведения программы для достижения нужной цели.
Запись алгоритма на каком-либо языке программирования в виде определенных инструкций (команд), которые идут друг за другом, называется программой. Таким образом, можно сказать, что программа – это алгоритм, который записан на языке программирования.
Каждый алгоритм представляет собой последовательность предписаний, выполнение которых позволяет за конечное число шагов перейти от исходных данных к конечному результату. В зависимости от степени детализации предписаний определяется уровень языка программирования – чем меньше детализация, тем соответственно выше уровень языка.
Для каждого алгоритма свойственно наличие такой важной и структурной составляющей как исполнитель.
Исполнитель алгоритма – это некоторая абстрактная или реальная (техническая, биологическая или биотехническая) система, которая способна выполнить действия, предписываемые алгоритмом
Свойства алгоритмов и способы его записи
Алгоритм должен обладать рядом определенных свойств. Среди основных свойств алгоритмов можно выделить следующие:
- Дискретность – это разбиение алгоритма на последовательность отдельных законченных действий.
- Детерминированность – любое действие алгоритма должно быть строго и недвусмысленно определено в каждом случае.
- Конечность – каждое действие в отдельности и алгоритм в целом должны иметь возможность для завершения.
- Массовость – один и тот же алгоритм можно одинаково успешно использовать с разными исходными данными.
- Результативность – составленный алгоритм закономерно должен приводить к достоверному решению.
Существует несколько способов для записи алгоритмов. На практике наибольшее распространение получили следующие формы представления алгоритмов:
- словесная (запись алгоритма, выполненная на естественном языке);
- псевдокоды (полуформализованные описания алгоритмов на условном алгоритмическом языке, которые содержит в себе одновременно элементы языка программирования и фразы естественного языка);
- графическая (изображения из графических символов – блок-схема. Начало и конец алгоритма на блок-схемах обозначают овалом, вводимые и выводимые переменные записываются в параллелограмме);
- программная (Программная реализация алгоритма осуществляется при помощи компьютерной программы, которая пишется при использовании каком-либо алгоритмического языка программирования (С++, Pascal, Basic и др.). Программа, используемая для алгоритма, состоит из команд определенного языка программирования. Необходимо отметить, что одна и та же блок-схема может быть реализована на нескольких языках программирования. Ответ при этом получает электронная вычислительная машина, а не человек).
Основные типы алгоритмов и принципы его выполнения
Среди всего многообразия алгоритмов можно отдельно выделить 4 основных типа:
- Линейный алгоритм. Описывает действие, которое будет выполняться много раз в определенном порядке.
- Разветвляющийся алгоритм. Определяет несколько последовательностей действий в зависимости от каких-нибудь условий.
- Циклический алгоритм. Определяет действия, которые должны выполняться какое-то количество раз подряд, пока не закончится заданный порядок.
- Вспомогательный алгоритм. Определяет действия, которые могут исполняться в других алгоритмах.
Алгоритм, помимо основных свойств, обладает совокупностью определённых принципов, которые выглядят следующим образом:
- Действия в алгоритме выполняются в порядке их записи;
- Нельзя менять местами никакие два действия алгоритма;
- Нельзя не закончив одного действия переходить к следующему.
Создание алгоритма (программы) требует не только соблюдения определённых принципов, но и знаний. Для реализации успешного алгоритма необходимо знать:
- полный набор исходных данных задачи (начальное состояние объекта);
- цель создания алгоритма (конечное состояние объекта);
- систему команд исполнителя (набор команд, которые исполнитель понимает и может выполнить).
Заказать статью по программированию у экспертов биржи Студворк!
Комментарии