Государственное бюджетное общеобразовательное учреждение «Средняя общеобразовательная школа № 717 г. Москвы» Реферат на тему: «Виды алгоритмов» Выполнила: ученица 9г Боровикова Полина Проверил: учитель информатики Воронин С. А. Москва, 2013 Содержание Введение 1. Алгоритм…………………………………………………………………..3 2. Механический алгоритм, гибкий алгоритм……………………………………………………………….…..3 3. Линейный алгоритм, циклический алгоритм…………………………………………………………………...4 4. Разветвляющийся алгоритм………………………………………….…………………….....5 5. Вспомогательный, вероятностный, эвристический алгоритмы………………………………………………………...……....6 Заключение Список используемой литературы Приложения 2 Введение Человек ежедневно встречается необходимостью следовать тем или иным правилам, выполнять различные инструкции и указания. Например, переходя через дорогу на перекрестке без светофора надо сначала посмотреть налево. Если машин нет, то прейти полдроги, а если машины есть, ждать, пока они пройдут, затем перейти полдороги. После этого посмотреть направо и, если машин нет перейти дорогу до конца, а если они есть, ждать пока они пройдут, а затем перейти дорогу до конца. В математике для решения типовых задач мы используем определенные правила, описывающие последовательности действий. Например, правила сложения дробных чисел, решения квадратных уравнений и т.д. Обычно любые инструкции и правила представляют собой последовательность действий, которые необходимо выполнить в определенном порядке. Для решения задачи надо знать, что дано, что следует получить и какие действия и в каком порядке следует для этого выполнить. Предписание, определяющее порядок выполнения действий над данными с целью получения искомых результатов, и есть алгоритм. 3 Алгоритм Алгоритм – описание последовательности действий, строгое исполнение которых приводит к решению поставленной задачи за конечное число шагов. Алгоритмы в зависимости от цели, начальных условий задачи, путей ее решения, определения действий исполнителя подразделяются следующим образом: Механические алгоритм, или иначе детерминированный - жесткий (например алгоритм работы машины, двигателя и т.п.). Механический алгоритм задает определенные действия, обозначая их в единственной и достоверной последовательности, обеспечивая тем самым однозначный требуемый или искомый результат, если выполняются те условия процесса, задачи, для которых разработан алгоритм. Гибкие алгоритмы, например стохастические, т.е. вероятностные и эвристические. 4 Виды алгоритмов: Линейный алгоритм набор - команд (указаний), выполняемых последовательно друг за другом. (Приложение №1) Циклический алгоритм - алгоритм, предусматривающий многократное повторение одного и того же действия (одних и тех же операций) Над новыми исходными данными. К циклическим алгоритмам сводится большинство методов вычислений, перебора вариантов. Цикл программы — последовательность команд (серия, тело цикла), которая может выполняться многократно (для новых исходных данных) до удовлетворения некоторому условию. Перечень повторяющихся действий называют телом цикла. Циклические алгоритмы бывают двух типов: Циклы со счетчиком, в которых какие-то действия выполняются определенное число раз. Циклы со счетчиком используют когда заранее известно какое число повторений тела цикла необходимо выполнить. Для счетчика от начального значения до конечного значения выполнить действие. Циклы с условием, в которых тело цикла выполняется, в зависимости от какого-либо условия. Различают циклы с предусловием и постусловием. При составлении циклических алгоритмов важно думать о том, чтобы цикл был конечным. Ситуация, при которой выполнение цикла никогда не заканчивается, называется зацикливанием. (Приложение № 2) 5 Разветвляющийся алгоритм Разветвляющийся алгоритм - алгоритм, в котором в зависимости от условия выполняется либо одна, либо другая последовательность действий (алгоритм, содержащий хотя бы одно условие, в результате проверки которого ЭВМ обеспечивает переход на один из двух возможных шагов). Условие – это высказывание которое может быть либо истинно, либо ложно. Еще раз обратим внимание, что существует две формы ветвления – неполная (когда присутствует только одна ветвь, т.е. в зависимости от истинности условия либо выполняется, либо не выполняется действие) и полная (когда присутствуют две ветви, т.е. в зависимости от истинности условия выполняется либо одно, либо другое действие). (Приложение № 3) 6 Вспомогательный алгоритм Вспомогательный алгоритм - алгоритм, ранее разработанный и целиком используемый при алгоритмизации конкретной задачи. В некоторых случаях при наличии одинаковых последовательностей указаний (команд) для различных данных с целью сокращения записи также выделяют вспомогательный алгоритм. Вероятностный алгоритм Вероятностный (стохастический) алгоритм дает программу решения задачи несколькими путями или способами, приводящими к вероятному достижению результата. Эвристический алгоритм Эвристический алгоритм (от греческого слова «эврика») — это такой алгоритм, в котором достижение конечного результата программы действий однозначно не предопределено, так же как не обозначена вся последовательность действий, не выявлены все действия исполнителя. К эвристическим алгоритмам относят, например, инструкции и предписания. В этих алгоритмах используются универсальные логические процедуры и способы принятия решений, основанные на аналогиях, ассоциациях и прошлом опыте решения схожих задач. 7 Заключение Любой человек ежедневно встречается с множеством задач от самых простых и хорошо известных до очень сложных. Для многих задач существуют определенные правила (инструкции), объясняющие исполнителю, как решать данную задачу. Чем точнее и понятнее будут описаны правила решения задач, тем быстрее человек овладеет ими и будет эффективнее их применять. Каждый из нас ежедневно использует различные алгоритмы. Обычно мы это делаем не задумываясь. Например, открывая дверь ключом, никто не размышляет над тем, в какой последовательности выполнять действия. Однако чтобы кого-нибудь (скажем, младшего брата) научить открывать дверь, придется четко указать и сами действия, и порядок их выполнения. Например, так: Достать ключ. Вставить ключ в замочную скважину. Повернуть ключ 2 раза против часовой стрелки. Вынуть ключ. 8 Список используемой литературы 1. http://www.about.sch1451.edusite.ru/p82aa1.html, - раздел «Алгоритм» 2. http://inform-school.narod.ru/bl3_t1.htm , - раздел «Линейный Алгоритм» 3. http://shkolo.ru/vidyi-algoritmov/ , - раздел «Вероятностный Алгоритм» 4. http://www.rusedu.info/Article641.html , - раздел «Циклический Алгоритм» 5. http://www.bestreferat.ru/referat-53458.html , - раздел «Приложения» 9 Приложения Приложение 1. Линейный алгоритм 10 Приложение 2. Циклический алгоритм 11 Приложение 3. Разветвляющийся алгоритм 12