Алгоритм в информатике и основы алгоритмизации
Под алгоритмом понимается предписание определенной последовательности действий исполнителю, чтобы добиться нужной цели в некоторое число шагов.
Что такое алгоритм в информатике? Это основополагающее ее понятие. Название пошло от написания по-латыни имени знаменитого арабского математика аль-Хорезми. В одной из своих книг он дал формулировку правил написания чисел арабскими цифрами и операций над цифрами, выполняемыми столбиком. Впоследствии этим термином стало считаться точное задание последовательности действий, дающее требуемый результат на основании обработки исходных данных.Алгоритмы обычно служат для их выполнения вручную или автоматически. Разработка их, от простейших до самых сложных, представляет собой творческий процесс. Эта работа под силу лишь человеческим существам.
Уточним понимание определения «алгоритм в информатике». Это не так легко. С этой целью сформулированы общие свойства алгоритма. Информатика позволяет на их основе отличать алгоритмы от иных инструкций.
Этот набор инструкций обладает свойствами:
- дискретности;
- результативности;
- массовости;
- определенности.
Рассмотрим их по-отдельности.
Дискретность
Раздельность набора команд (его дискретность) состоит в том, что он организует решение проблемы в форме последовательных шагов. Каждый новый шаг выполняется лишь после окончания выполнения предыдущего этапа.Определенность
Правила его должны отличаться четкостью и однозначностью, не позволяя произвольной трактовки. Это позволяет алгоритм в информатике выполнять механически, не требуя добавочных данных о решении задачи.Результативность (конечность)
Задача должна решаться за некоторое ограниченное число этапов.
Массовость
Набор команд, решающий задачу, создается в некоем общем виде. Он должен быть рассчитан не на одну задачу, а на целый класс проблем, которые различаются лишь начальными данными, лежащими в диапазоне, именуемом областью применяемости.Таковы все свойства алгоритма. Информатика учит применению этих свойств на практике.
Недостатки определения
Но одних свойств мало. Если лишь базируясь на перечисленных свойствах судить, что такое алгоритм в информатике, то его понимание будет явно неполным и недостаточно точным.С одной стороны, этот набор инструкций не обязательно должен решать какую-либо задачу. С другой - свойством “массовости” обладает не столько алгоритм, сколько все математические методы. Практические задачи, решаемые математическими методами, базируются на выделении некоторых значимых признаков, которые характеризуют определенную совокупность явлений. Затем важнейшие признаки ложатся в основу математической модели, а малосущественные отбрасываются.
Бытовые примеры
Когда проходится тема по информатике “алгоритмы”, поясняя смысл этого понятия, нередко в качестве примеров используют бытовые алгоритмы:
- кипячение воды;
- открытие дверей квартиры;
- переход улицы.
Несколько более сложными бытовыми наборами инструкций являются кулинарные рецепты или порядок изготовления лекарств. Но в полном смысле алгоритмами их назвать нельзя. Ведь для создания лекарства и приготовления пищи нужны знания, а алгоритм предусматривает бездумное пошаговое выполнение неких предписаний.
Порядок арифметических действий или построения геометрических фигур также можно отнести к этой категории информатики.
Разновидности
Виды алгоритмов отличаются от вида деятельности, целей и путей их решения.
Они бывают:
• Механическими. Такие наборы команд заранее определены (например, работа двигателя). Они выполняются в единственной последовательности.
• Гибкими (стохастическими или эвристическими). Первые задают несколько путей решения задачи, а вторые решают задачи на основе аналогий и ассоциаций.
• Линейными. Команды в этом случае выполняются по очереди друг за другом.
• Разветвляющимися. С условиями, по итогам проверки которых выполняется одна из нескольких вероятных веток.
• Циклическими. Использующими многократное повторение нескольких операций. Обычно такие наборы команд применяются при переборе вариантов.
Одна из отраслей, которую изучает информатика, алгоритмизация - процесс создания алгоритма. Одной из предварительных стадий алгоритмизации задач является создание структурного представления набора команд, которое затем используется на всех этапах дальнейшей работы.
Структурная схема алгоритма - запись его шагов в форме блоков, объединенных друг с другом стрелками. Один блок - это один шаг набора инструкций.
Такое представление весьма популярно, так как оно очень наглядно и благодаря этому заметно облегчается написание и отладка программ. Кроме того, он удобен для объяснения того, как функционирует готовый алгоритм.
Требования к алгоритму
Сформулированы в виде правил.
Первое правило – он оперирует объектами, называемыми данными. Начинается его выполнение с обработки входных данных, а результатом работы становится выдача выходных данных.
Второе – для своего выполнения нуждается в памяти, где располагаются данные. Память состоит из именованных ячеек, называемых переменными.
Третье – дискретность. Он составлен из команд, число которых конечно.
Четвертое – детерминированность. На каждом этапе известно, какой шаг будет идти следом.
Пятое – результативность. Завершиться он должен за ограниченное количество шагов, причем надо пометить, что должно получиться в итоге его работы.
Похожие статьи
- Виды алгоритмов и примеры
- Блок-схема: примеры, элементы, построение. Блок-схемы алгоритмов
- Способы описания алгоритмов: особенности и рекомендации
- Алгоритм - это... Схема алгоритма
- Алгоритмический язык - формальный язык, используемый для записи, реализации или изучения алгоритмов. Основные служебные слова алгоритмического языка
- Линейное программирование: виды, назначение и алгоритм работы
- Пространственная дискретизация. Обработка графической информации