Начальная

Windows Commander

Far
WinNavigator
Frigate
Norton Commander
WinNC
Dos Navigator
Servant Salamander
Turbo Browser

Winamp, Skins, Plugins
Необходимые Утилиты
Текстовые редакторы
Юмор

File managers and best utilites

История развития понятия алгоритма. Реферат история формирования понятия алгоритм


История алгоритма — Letopisi.ru

Материал из Letopisi.Ru — «Время вернуться домой»

История алгоритма: от Аль-Хорезми до современности

Слово алгоритм происходит от имени великого среднеазиатского ученого 8–9 вв. Абу Абдуллах Мухаммеда ибн Мусса аль-Хорезми. Из математических работ Аль-Хорезми до нас дошли только две – алгебраическая и арифметическая. Вторая книга долгое время считалась потерянной, но в 1857 в библиотеке Кембриджского университета был найден ее перевод на латинский язык. В ней описаны четыре правила арифметических действий, практически те же, что используются и сейчас. Первые строки этой книги были переведены так: «Сказал Алгоритми. Воздадим должную хвалу Богу, нашему вождю и защитнику». Так имя Аль-Хорезми перешло в Алгоритми, откуда и появилось слово алгоритм. Термин алгоритм употреблялся для обозначения четырех арифметических операций, именно в таком значении он и вошел в некоторые европейские языки. Книга Аль-Хорезми.jpg

Постепенно значение слова расширялось. Учёные начинали применять его не только к сугубо вычислительным, но и к другим математическим процедурам. Например, около 1360 г. французский философ Николай Орем написал математический трактат «Algorismus proportionum» («Вычисление пропорций»), в котором впервые использовал степени с дробными показателями и фактически вплотную подошёл к идее логарифмов. Когда же на смену абаку пришёл так называемый счёт на линиях, многочисленные руководства по нему стали называть «Algorithmus linealis», то есть правила счёта на линиях.

В 1684 году Готфрид Лейбниц в сочинении «Nova Methodvs pro maximis et minimis, itemque tangentibus…» впервые использовал слово «алгоритм» (Algorithmo) в ещё более широком смысле: как систематический способ решения проблем дифференциального исчисления.

Готфрид Лейбниц.jpg

Пользовался словом алгоритм и Леонард Эйлер, одна из работ которого так и называется — «Использование нового алгоритма для решения проблемы Пелля» («De usu novi algorithmi in problemate Pelliano solvendo»). Понимание Эйлером алгоритма как синонима способа решения задачи уже очень близко к современному.

Историки датируют 1691 годом один из списков древнерусского учебника арифметики, известного как «Счётная мудрость». Это сочинение известно во многих вариантах и восходит к ещё более древним рукописям XVI в. По ним можно проследить, как знание арабских цифр и правил действий с ними постепенно распространялось на Руси. Таким образом, слово «алгоритм» понималось первыми русскими математиками так же, как и в Западной Европе. Однако его не было ни в знаменитом словаре В. И. Даля, ни спустя сто лет в «Толковом словаре русского языка» под редакцией Д. Н. Ушакова (1935 г.). Зато слово «алгорифм» можно найти и в популярном дореволюционном Энциклопедическом словаре братьев Гранат, и в первом издании Большой Советской Энциклопедии (БСЭ), изданном в 1926 г. И там, и там оно трактуется одинаково: как правило, по которому выполняется то или иное из четырёх арифметических действий в десятичной системе счисления. Однако к началу XX в. для математиков слово «алгоритм» уже означало любой арифметический или алгебраический процесс, выполняемый по строго определённым правилам, и это объяснение также даётся в БСЭ.

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

Современный взгляд на алгоритмизацию.

Теория алгоритмов строит и изучает конкретные модели алгоритмов. С развитием вычислительной техники и теории программирования возрастает необходимость построения новых экономичных алгоритмов, изменяются способы их построения, способы записи алгоритмов на языке, понятном исполнителю. Особый тип исполнителя алгоритмов – компьютер, поэтому необходимо создавать специальные средства, позволяющие, с одной стороны, разработчику в удобном виде записывать алгоритмы, а с другой – дающие компьютеру возможность понимать написанное. Такими средствами являются языки программирования или алгоритмические языки.

letopisi.org

1.Алгоритм. История возникновения термина. Формальные признаки алгоритма.

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

История терминов

Слово «алгоритм» происходит от имени великого среднеазиатского учёного Мухаммеда аль-Хорезми́, жившего в первой половине IX ве́ка.

Около 825 года аль-Хорезми написал сочинение, в кот. впервые дал описание придуманной в Индии позиционной десятичной системы счисления. Аль-Хорезми сформулир.правила вычисл. в новой системе , впервые использовал цифру 0 для обозначения пропущенной позиции в записи числа.В первой половине XII века книга аль-Хорезми в латинском переводе проникла в Европу(«Algoritmi de numero Indorum» («Индийское искусство счёта, сочинение аль-Хорезми»).

Формальные признаки алгоритма

  1. Последовательность (определенность) – в каждый момент времени следующий шаг работы однозначно определяется системами. В этом случае выдается один и тот же результат для одних и тех же исходных данных.

  2. Понятность – алгоритм для исполнителя должен включать только те команды, которые ему понятны, т.е. входят в его систему команд.

  3. Завершаемость (конечность) – при корректных заданных исходных данных алгоритм должен завершаться выдачей результата.

  4. Массовость – алгоритм должен быть применим к разным наборам исходных данных.

  5. Результативность – алгоритм должен обязательно выдавать результат.

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

Алгоритм (или программа) содержит ошибки, если для некоторых исходных данных он выдает неправильные результаты, сбои, отказы или не дает результатов вообще.

Рекурсивные алгоритмы – это алгоритмы, вызывающие себя до тех пор, пока не будет достигнуто некоторое условие возращения.

2.Этапы решения задачи на компьютере.

Этапы решения задачи на компьютере.

1.Постановка задачи.

- четкое уяснение решаемой задачи;

- структура назначения ограничения задачи;

- состав и структура исходных данных и результатов;

- требования к организации интерфейса пользователя;

- определение математических подходов;

- выявл.ошибочных ситуаций и реакции на них алгоритма ;

2. Формализация решения задачи – выбор существующих или разработка новых матем. способов решения задач. Декомпозиция задачи на подзадачи.

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

4. Программирование – написание программы на компьютере.

5. Тестирование и отладка – проверка правильности решения путем выполнения ее для различных наборов исходных данных. Желательно, чтобы результат был известен. Обработка частных случаев.

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

Отладка алгоритма.

- опытная эксплуатация и доработка программы;

- эксплуатация сопровождения и доработка программы;

- утилизация и уничтожение программы;

studfiles.net

История развития понятия алгоритма

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

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

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

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

В двадцатых годах прошлого века задача такого определения понятия алгоритма стала одной из центральных математических проблем. Решение ее было получено в середине тридцатых годов в работах известных математиков: Гильберта, Геделя, Черча, Клини, Поста и Тьюринга.

В 50-е годы прошлого столетия существенный вклад в развитие теории алгоритмов внесли работы Колмогорова и Маркова. Формальные модели алгоритмов Поста, Тьюринга и Черча, равно как и модели Колмогорова и Маркова, оказались эквивалентными в том смысле, что любой класс проблем, разрешимых в одной модели, разрешим и в другой.

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

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

 

2. Общие требования к алгоритму

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

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

Пусть - множество исходных данных задачи , а - множество возможных результатов. Тогда можно говорить, что алгоритм осуществляет отображение

 

.

 

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

На сегодняшний день отсутствует одно исчерпывающее опредление алгоритма. Приведем несколько используемых определений.

Определение 1.(Колмогоров): Алгоритм – это всякая система вычислений, выполняемых по строго определенным правилам, которая после какого-либо числа шагов заведомо приводит к решению поставленной задачи.

Определение 2.(Марков): Алгоритм – это точное предписание, определяющее вычислительный процесс, идущий от варьируемых исходных данных к искомому результату.

В приведенных словесных определениях очевидна проблема однозначной трактовки терминов, в силу чего возникают следующие неопределенности с

  • исполнителем предписаний,
  • вычислительными возможностями исполнителя,
  • указанием, какие именно операции для исполнителя являются «элементарными».

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

Однако, несмотря на имеющиеся неопределенности и неоднозначности, различные определения алгоритма в явной или неявной форме постулируют следующие общие требования [Макконнелл]:

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

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

· Алгоритм должен быт единым для всех допустимых исходных данных, т.е. удовлетворять требованию универсальности;

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

 

Необходимо отметить, что сравнение алгоритмов по их эффективности, проверка их правильности и эквивалентности, определение областей применимости возможны только на основе формализации понятия алгоритма. В связи с этим чрезвычайно важно наличие формально строгого определения понятия алгоритма. Формализации данного понятия связаны с введением специальных математических конструкций – формальных алгоритмических систем или моделей вычислений, каковыми являются машина Поста, машина Тьюринга, рекурсивно-вычислимые функции Черча, и постулированием тезиса об эквивалентности такого формализма и понятия «алгоритм». Несмотря на принципиально разные модели вычислений, использующиеся в теории алгоритмов для определения термина «алгоритм», интересным результатом является формулировка гипотез об эквивалентности этих формальных определений.

 



infopedia.su

История алгоритма — реферат

Министерство Образования  Российской Федерации Дальневосточный Федеральный Университет (ДВФУ) Школа экономики и менеджмента

 

 

 

 

 

 

 

Реферат: «История алгоритма» Дисциплина: Программирование.

 

 

 

 

Выполнила: ст. гр. Б1104

Иванова Ирина Ивановна.

Проверил: Тихоновская Галина Ивановна – преподаватель, доцент.                                                                                          

 

 

 

 

 

Владивосток,  2013 г. 

Оглавление

Введение 3

1. История 4

2. Понятие  алгоритма. Сущность алгоритмизации 8

3. Свойства  алгоритма 9

5. Типовые  структуры алгоритмов 13

5.1. Линейная  структура 13

5.2. Разветвляющаяся  структура 13

5.3. Циклическая  структура 13

Заключение 15

Литература 16

 

 

Введение

Понятие алгоритма является одним из основных понятий вычислительной математики, однако, оно возникло в  связи с поисками общих методов  решения однотипных задач задолго  до появления вычислительных машин.  Еще в III веке до н.э. греческий математик Евклид изложил правило вычисления наибольшего общего делителя двух натуральных чисел. Это правило историки математики считают первым алгоритмом, хотя само слово "алгоритм" появилось гораздо позднее.

 

1. История

Древнегреческий ученый Эратосфен (II в. до н. э.) предложил способ получения  простых чисел (т.н. "решето Эратосфена"). В IX в. узбекский математик Мухаммад Ал-Хорезми разработал правила четырех арифметических действий над числами. В Европе эти правила стали называть алгоритмами (от латинской формы написания имени автора - Alchorismi илиAlgorithmi). Переводы арифметического трактата Ал-Хорезми с арабского содержали описание индийской позиционной системы счисления и искусства счета в этой системе (например, алгоритм сложения "столбиком"). Таким образом, сначала понятие "алгоритм" обозначало десятичную позиционную арифметику  и процедуры цифровых вычислений.

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

Суть упомянутого выше алгоритма Евклида состоит в  том, чтобы вычитать из большего числа  меньшее, подставляя результат на место  большего числа, до тех пор, пока числа  не станут равны друг другу. Эти равные числа и будут наибольшим общим  делителем их разности и любого из чисел. Идея алгоритма понятна, но требует  уточнения для использования  ее на практике. Более конкретно  алгоритм выглядит следующим образом:

А. Сравнить первое и второе числа. Если они равны, перейти к п. Г.  Если нет, то перейти к п.Б.

Б. Если первое число меньше второго, то переставить их. Перейти к п.В.

В. Вычесть из первого числа второе и рассмотреть полученную разность как новое первое число. Перейти к п.А. Г. Считать первое число результатом задачи.

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

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

Уже в нашем веке эта  идея приобрела более конкретную форму: найти алгоритм проверки правильности любой теоремы при любой системе  аксиом, т.е. алгоритм, который  отвечал бы на вопрос, верна ли теорема, и давал бы вывод ее доказательства. Построить такие алгоритмы не удавалось, и постепенно возникло мнение, что это вообще невозможно, то есть, что рассматриваемые задачи алгоритмически неразрешимы. Но поскольку само понятие алгоритма не было строго определено, то нельзя было и доказывать невозможность алгоритмического решения задач. Требовалось построить формальное определение алгоритма.

А поскольку объектом алгоритма  может оказаться все, что угодно, то начать следовало с формализации понятия объекта. Например, любые  объекты реального мира можно  обозначать словами в некотором  алфавите. Тогда объектами действия алгоритмов могут быть только слова. В этом случае алгоритм может быть определен, как четкая конечная система  правил для преобразования слов из некоторого алфавита в слова из этого  же алфавита.

В начале ХХ в. алгоритм стал объектом математического изучения.

Общее понятие алгоритма  как эффективной вычислительной процедуры и примеры использования  такого понятия встречаются в  работах француза Э.Бореля (1912 г.) и  немца Г.Вейля (1921 г.). Оба они пришли к понятию вычислимой функции (термин "fonction calculable").

Одно из первых формальных определений алгоритма дал английский математик А.Тьюринг [1, 2], который в 1936 году описал схему гипотетической (абстрактной) машины и назвал алгоритмом то, что умеет делать такая машина. А если что-то не может быть сделано машиной Тьюринга, то это уже не алгоритм. Таким образом, Тьюринг формализовал правила выполнения действий при помощи описания работы некоторой конструкции. Вычислительные машины - это тоже конструкции для выполнения алгоритмов, но это реальные устройства, тогда как машина Тьюринга - это математическая модель, она является абстракцией, которая никогда не была реализована, да и вообще не может быть реализована. Польза от машины Тьюринга в том, что, говоря о воображаемой конструкции, можно доказывать существование или несуществование алгоритмов решения различных задач.

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

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

В 1954 г. советский математик А.А. Марков[1] предложил  свою алгоритмическую схему преобразования слов, назвав ее нормальным алгоритмом. Он ввел также понятие нормализации как перехода от разных способов описания алгоритмов к эквивалентным нормальным алгоритмам. Основная гипотеза теории алгоритмов в форме Маркова звучит так: "Всякий алгоритм нормализуем". Как и машина Тьюринга, алгоритмическая схема Маркова в общем случае не может быть физически реализована, т.к. она, например, допускает неограниченно большую длину слов. А вот формулировка алгоритма по Маркову: "Алгоритм - это точное предписание, которое задает вычислительный процесс, начинающийся с произвольного (но выбранного из фиксированной для данного алгоритма совокупности) исходного данного и направленный на получение полностью определяемого этим исходным данным результата" [2].

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

Наиболее общий подход к уточнению понятия алгоритма  предложил советский ученый Колмогоров А.Н.[2], который дал и его "наглядное" представление: "Алгоритм, примененный ко всякому "условию" ("начальному состоянию") из некоторого множества ("области применимости" алгоритма), дает "решение" ("заключительное состояние"). Алгоритмический процесс расчленяется на отдельные шаги заранее ограниченной сложности; каждый шаг состоит в "непосредственной переработке"… (одного) состояния в (другое). Процесс переработки… продолжается до тех пор, пока либо не произойдет безрезультатная остановка, либо не появится сигнал о получении "решения". При этом не исключается возможность неограниченного продолжения процесса…" Формулировка Колмогорова содержит два существенных момента: идея итеративности алгоритмического процесса и идея локальности каждого отдельного шага.

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

В настоящее время понятие "алгоритм" вышло за пределы  математики. Его стали применять  в самых различных областях, понимая  под ним точно сформулированные инструкции, назначение которых - достижение необходимого результата. Формирование научного понятия алгоритма, ставшее важной проблемой, не закончено и в настоящее время. Теория алгоритмов, как любая другая наука, находится в постоянном развитии. Согласно утверждению авторов [2], современная теория алгоритмов может быть разделена на две части.

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

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

 

2. Понятие алгоритма. Сущность алгоритмизации

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

Алгоритм - это строгая, четкая последовательность математических и логических операций, приводящая к решению задачи.

В Толковом словаре по информатике (1991г.) дано общепринятое понятие: алгоритм - точное предписание, определяющее вычислительный процесс, ведущий от варьируемых начальных данных к искомому результату.

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

 

3. Свойства алгоритма

Описание основных свойств  помогает углубить само понятие алгоритма. Итак, алгоритм должен обладать следующими свойствами:

  • Детерминированность (определенность, точность, однозначность). Это свойство заключается в том, что при задании одних и тех же исходных данных несколько раз алгоритм будет выполняться абсолютно одинаково и всегда будет получен один и тот же результат. Свойство детерминированности проявляется также и в том, что на каждом шаге выполнения алгоритма всегда точно известно, что делать дальше, а каждое действие однозначно понятно исполнителю и не может быть истолковано неопределенно. Благодаря этому свойству выполнение алгоритма носит механический характер.
  • Массовость - выражается в том, что с помощью алгоритма можно решать не одну конкретную задачу, а любую задачу из некоторого класса однотипных задач при всех допустимых значениях исходных данных.
  • Результативность  (направленность) - означает, что выполнение алгоритма обязательно должно привести к решению поставленной задачи, либо к сообщению о том, что при заданных исходных величинах задачу решить невозможно. Алгоритмический процесс не может обрываться безрезультатно.
  • Дискретность - означает, что алгоритм состоит из последовательности отдельных шагов - элементарных действий, выполнение которых не представляет сложности. Именно благодаря этому свойству алгоритм может быть реализован на ЭВМ.
  • Конечность (финитность)- заключается в том, что последовательность элементарных действий алгоритма не может быть бесконечной, неограниченной, хотя может быть очень большой (если требуется, например, большая точность вычислений).
  • Корректность - означает, что если алгоритм создан для решения определенной задачи, то для всех исходных данных он должен всегда давать правильный результат и ни для каких исходных данных не будет получен неправильный результат. Если хотя бы один из полученных результатов противоречит хотя бы одному из ранее установленных и получивших признание фактов, алгоритм нельзя признать корректным.

referat911.ru

2.3 Виды алгоритмов. История формирования понятия "алгоритм". Известнейшие алгоритмы в истории математики

Похожие главы из других работ:

Алгоритм фильтрации, пример на основе БПФ

1. ОСНОВЫ АЛГОРИТМОВ БПФ

Дискретное преобразование Фурье (ДПФ) X(k) конечной последователъности х(пТ), п=О, 1,..., N-1 определяется согласно (1.1), (1.2): (1.1) (1.2) причем является периодической последовательностью с периодом N, так как т=О, 1, 2… Непосредственное вычисление ДПФ (5...

Алгоритм фильтрации, пример на основе БПФ

8. АНАЛИЗ ТОЧНОСТИ РЕАЛИЗАЦИИ АЛГОРИТМОВ БПФ

При реализации алгоритма БПФ, как и, при реализации других алгоритмов цифровой обработки сигналов, возникают вычислительные ошибки, округлением (усечением) произведений, квантованием коэффициентов и...

Визуализация численных методов

3. Виды, формы

...

Дифференциальная геометрия поверхностей Каталана

2.3 Виды поверхностей Каталана

Напомним, что среди линейчатых поверхностей имеет место следующая классификация. Теорема 2.1 Поверхность Каталана может быть либо косой линейчатой поверхностью, либо цилиндрической поверхностью...

Исследование метода простой итерации для решения систем линейных алгебраических уравнений

3.6 Описание алгоритмов

...

История формирования понятия "алгоритм". Известнейшие алгоритмы в истории математики

2.2 Свойства алгоритмов

Первое свойство дискретность (прерывность, раздельность) - алгоритм должен представлять процесс решения задачи как последовательное выполнение простейших (или ранее определенных) шагов. Каждое действие исполняется только тогда...

Конические сечения

Виды конических сечений.

Конические сечения могут быть трёх типов: 1) секущая плоскость пересекает все образующие конуса в точках одной его полости; линия пересечения есть замкнутая овальная кривая -- эллипс; окружность как частный случай эллипса получается...

Математические модели

3.1 Логические модели. Блок-схемы алгоритмов

Описание станций линий метро линия(линия_1,[a,s,d,f,g]). линия(линия_2,[l,k,d,j,h]). линия(линия_3,[z,x,d,c,v]). линия(линия_4,[b,n,d,m,q]). линия(линия_5,[c,j,f,m,x,k,s,n,c]). Далее определяеться принадлежность станции к линии. Т.е. станция принадлежит списку (линии)...

Математическое моделирование и методики расчёта на ЭВМ для систем автоматического проектирования элементов дисперсионных акустических линий задержки

1.2.3 Основные виды устройств на ПАВ

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

Метод простой итерации для решения систем линейных алгебраических уравнений

3.6 Описание алгоритмов

...

Различные способы создания моделей правильных многогранников

2. Виды правильных многогранников

«Правильных многогранников вызывающе мало, но этот весьма скромный по численности отряд сумел пробраться в самые глубины различных наук» Л...

Системный анализ групп преобразований состояний кубика Рубика

3.4 Анализ некоторых алгоритмов решения головоломки

Первые разработанные алгоритмы требовали 200-300 ходов (поворотов граней) для того, чтобы вернуть кубик в нулевое состояние. Постепенно длина алгоритмов (т.е. минимальное число ходов, гарантирующее решение) сокращалась...

Способы решения функциональных уравнений

3. Виды функциональных уравнений

...

Теория вероятностей на уроках математики

§2. Виды событий

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

Элементы высшей математики

1.1 Матрицы, виды матриц

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

math.bobrodobro.ru


Смотрите также

 

..:::Новинки:::..

Windows Commander 5.11 Свежая версия.

Новая версия
IrfanView 3.75 (рус)

Обновление текстового редактора TextEd, уже 1.75a

System mechanic 3.7f
Новая версия

Обновление плагинов для WC, смотрим :-)

Весь Winamp
Посетите новый сайт.

WinRaR 3.00
Релиз уже здесь

PowerDesk 4.0 free
Просто - напросто сильный upgrade проводника.

..:::Счетчики:::..

 

     

 

 

.