Понятие об алгоритмах
Почти во всех сферах жизни нам приходится ежедневно иметь дело с различными правилами, инструкциями, предписаниями, рецептами и т.д., в соответствии с которыми можно или нужно что-то сделать. Когда такие инструкции удовлетворяют определенным минимальным требованиям, то говорят об алгоритме. Название это введено в честь знаменитого ученого Мухаммеда аль-Хорезми, жившего во “дворце мудрости” багдадского халифа (780–850 годы новой эры), о котором мы уже упоминали ранее. Латинская форма написания имени великого математика IX века – algorithmi. Понятие алгоритма – одно из фундаментальных понятий информатики. Алгоритмизация наряду с моделированием выступает в качестве метода информатики. Алгоритмы являются объектом систематического исследования пограничной между математикой и информатикой научной дисциплины, примыкающей к математической логике – теории алгоритмов.
Таким образом, все мы живем в мире алгоритмов, не замечая этого. Алгоритмы экономят силы и время человека, так как однажды усвоенным алгоритмом можно пользоваться всю жизнь. Одни алгоритмы органично “сидят” в нас, заложены природой, даны воспитанием, обучением, тренировкой, выработаны на основе собственного опыта. К другим приходится обращаться, когда мы хотим выполнить что-то сложное, например, собирая сложную электронную игрушку, мы вынуждены пользоваться не только принципиальной электрической схемой, но и монтажной схемой и инструкцией по сборке.
Исходя из сказанного, можно дать такое определение алгоритма.
Алгоритм – есть точное, сформулированное на определенном языке конечное описание, определяющее содержание и последовательность исполнимых элементарных операций обработки, переводящих исходные данные в искомый результат.
Описание должно быть составлено настолько точно, чтобы исключить его неоднозначное понимание. Такому пониманию не должны мешать, вообще говоря, ни орфографические ошибки, ни безобидные опечатки. Один и тот же алгоритм может быть записан на любом языке, в том числе и на языке пиктограмм. При этом неважно, описаны ли единичные операции обработки словесно, в виде формул или графически.
Многие инструкции и правила, составленные для исполнителя–человека, не соответствуют данному требованию, так как предполагают наличие у него некоторого дополнительного объема знаний, умений, интуиции и здравого смысла.
Создание и использование в качестве исполнителей различных автоматов, роботов и компьютеров требуют точного и однозначного описания алгоритмов их работы. Это связано с тем, что каждое из этих устройств может выполнять ограниченный, строго определенный набор (и только их) законченных простейших действий. Указание выполнить конкретное законченное простейшее действие называется командой.Совокупность всех команд, которые может выполнять исполнитель, называется системой команд данного исполнителя. Ограниченные возможности исполнителей – одна из причин трудностей, возникающих при создании алгоритмов. Поэтому, например, чем разнообразнее в компьютере система команд, тем более широкий класс задач можно решать с его помощью.
Поскольку алгоритмы могут применяться к самым произвольным объектам (числа, буквы, слова, логические выражения, станки с числовым программным управлением и т.д.), то в определении алгоритма используется термин, показывающий его назначение. В вычислительных алгоритмах объектами являются числа, в геометрических задачах – точки, линии, плоскости и т.д. В алгоритмах работы станков с числовым программным управлением объектами являются режущий инструмент, его пространственное положение, скорость вращения, перемещения и резания и т.д.
Выполняя алгоритм, исполнитель может не вникать в смысл того, что он делает и, вместе с тем, получить нужный результат. В таком случае говорят, что исполнитель действует формально, отвлекается от смысла (содержания) поставленной задачи и только строго выполняет соответствующие команды алгоритма. Для примера рассмотрим простейший алгоритм:
1. Пусть X=34, Y=85.
2. Если X=Y, то перейти к выполнению шага 8.
Дата добавления: 2018-11-25; просмотров: 347;