logo
Методические проблемы изучения алгоритмов работы с величинами

Понятие алгоритма.

Понятие алгоритма является одним из основных понятий современной математики. Еще на самых ранних ступенях развития математики (Древний Египет, Вавилон, Греция) в ней стали возникать различные вычислительные процессы чисто механического характера. С их помощью искомые величины ряда задач вычислялись последовательно из исходных величин по определенным правилам и инструкциям. Со временем все такие процессы в математике получили название алгоритмов (алгорифмов).

Термин алгоритм происходит от имени средневекового узбекского математика Аль-Хорезми, который еще в IX в. (825) дал правила выполнения четырех арифметических действий в десятичной системе счисления. Процесс выполнения арифметических действий был назван алгоризмом.

С 1747 г. вместо слова алгоризм стали употреблять алгорисмус,

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

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

Уточним понятие словесного представления алгоритма на примере нахождения произведения п. Натуральных чисел - факториал числа п (с =n!), т.е. вычисления по формуле с = 1*2*3*4*...*n. Этот процесс может быть записан в виде следующей системы последовательных указаний (пунктов):

1. Полагаем с равным единице и переходим к следующему пункту.

2. Полагаем i равным единице и переходим к следующему пункту.

3. Полагаем с = i*c и переходим к следующему пункту.

4. Проверяем, равно ли ; числу п. Если i= п , то вычисления прекращаем. Если i < п , то увеличиваем i на единицу и переходим к пункту 3.

Рассмотрим еще один пример алгоритма - нахождение наименьшего числа М в последовательности из п чисел a1,a2,...an ( n = 0). Прежде чем записать словесный алгоритм данного примера, детально рассмотрим сам процесс поиска наименьшего числа. Будем считать, что процесс поиска осуществляется следующим образом. Первоначально в качестве числа М принимается A1, т. е полагаем М =A1 после чего М сравниваем с последующими числами последовательности, начиная с A2, если М <A2, то М сравнивается с A3, если М <A3, то М сравнивается с A4, и так до тех пор, пока найдется число Ai<М. Тогда полагаем М = Ai и продолжаем сравнение с М последующих чисел из последовательности, начиная с Ai+1 и так до тех пор, пока не будут просмотрены все п чисел. В результате просмотра всех чисел М будет иметь значение, равное наименьшему числу из последовательности (I- текущий номер числа). Этот процесс может быть записан в виде следующей системы последовательных указаний:

1. Полагаем i= 1 и переходим к следующему пункту.

2. Полагаем М=Ai и переходим к следующему пункту.

3. Сравниваем i с п; если i<п, переходим к 4 пункту, если i=п, процесс поиска останавливаем.

4. Увеличиваем, i на 1 и переходим к следующему пункту.

5. Сравниваем Ai с М. Если М<Ai, то переходим к пункту 3, иначе (М>А) переходим к пункту 2.

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

Алгоритмы, в соответствии с которыми решение поставленных задач сводится к арифметическим действиям,называются численными алгоритмами.

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

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