Само слово
«алгоритм» происходит от имени учёного Абу Абдуллах Мухаммеда ибн Муса
аль-Хорезми (алгоритм — аль-Хорезми). Около 825 года он написал сочинение, в
котором впервые дал описание придуманной в Индии позиционной десятичной системы
счисления. К сожалению, арабский оригинал книги не сохранился. Аль-Хорезми
сформулировал правила вычислений в новой системе и, вероятно, впервые
использовал цифру 0 для обозначения пропущенной позиции в записи числа. В
первой половине XII века книга аль-Хорезми в латинском переводе проникла в
Европу. Переводчик, имя которого до нас не дошло, дал ей название Algoritmi de
numero Indorum («Алгоритмы о счёте индийском»). По-арабски же книга именовалась
Китаб аль-джебр валь-мукабала («Книга о сложении и вычитании»). Из оригинального
названия книги происходит слово Алгебра (алгебра — аль-джебр — сложение).Таким
образом, мы видим, что латинизированное имя среднеазиатского учёного было
вынесено в заглавие книги, и сегодня ни у кого нет сомнений, что слово
«алгоритм» попало в европейские языки именно благодаря этому сочинению. Однако
вопрос о его смысле длительное время вызывал ожесточённые споры. На протяжении
многих веков происхождению слова давались самые разные объяснения.
Очень распространённой была версия о греческом происхождении
книги. В англо-норманнской рукописи XIII века, написанной в стихах, читаем:
"Алгоризм был
придуман в Греции. Это часть арифметики. Придуман он был мастером по имени
Алгоризм, который дал ему своё имя. И поскольку его звали Алгоризм, Он назвал
свою книгу «Алгоризм».
«Алгоритм — это
конечный набор правил, который определяет последовательность операций для
решения конкретного множества задач и обладает пятью важными чертами:
конечность, определённость, ввод, вывод, эффективность». (Д. Э. Кнут)
Алгоритм может
быть записан словами и изображён схематически. Обычно сначала алгоритм
описывается словами, затем он обретает всё более формальные очертания и
формулировку на языке, понятном исполнителю. Например, для описания алгоритма
применяются блок-схемы.
Базовые
алгоритмические структуры: следствие, ветвление, цикл.
Алгоритм - анализ
задачи: 1)уточнение постановки задачи; 2)уточнение исходных данных; 3)уточнение
условий решения.
Алгоритм - разработка алгоритма решения:
1)есть ли решенные аналогичные задачи? 2)что известно? 3)что нужно найти? 4)как
данные связаны между собой?
Метод
проектирования алгоритма сверху вниз:
определяются цели и их иерархия, затем устанавливается
состав приложений для реализации поставленной цели. Далее уточняется характер
взаимосвязи приложений с их характеристиками, определяется необходимая для
решения задач функция обработки данных. Выполняется декомпозиция функций
обработки.
Комментариев нет:
Отправить комментарий