Динамический стереотип-статья
Информационная модель-Статья
Плато,чтобы достигнуть восстановления движения,отталкиваясь
от неподвижного изображения,разлагал
его на составные элементы.
Тайны рисованного мира - е.а.гамбург
Алгоритм -это описание последовательности действий ,которые необходимо
выполнить для решения данной задачи.
Алгоритм имеет следующие свойства .
1.Определенность - решение задачи по данному алгоритму может
производиться многократно ,в любое время и разными людьми ,так что при одних и
тех же начальных данных будет получаться один и тот же результат.
2.Результативность — решение задачи по данному алгоритму является конечным
процессом, который завершается получением некоторого результата или
возникновением сигнала о том, что данный алгоритм неприменим к заданным
начальным данным (например, описанный алгоритм решения квадратного уравнения
неприменим, когда дискриминант, отрицателен).
3. Дискретность - алгоритм состоит из определенных отдельных действий,так что
после окончания данного действия можно приступать к выполнив следующего.
4. Цикличность — возможность описания алгоритма таким образом, что группы
указаний будут выполняться многократно при изменении некоторой входящей
величины.
В заключение можно сказать, что о важности понятия "алгоритм"
можно судить по следующему определению вычислительной машины:
вычислительная машина служит для
автоматического выполнения алгоритмов.
Опыт алгоритмизации различного рода задач как вычислительного, так и
невычислительного характера позволяет сформулировать ряд правил (рекомендаций),
выполнение которых облегчает и упрощает процесс составления алгоритма и
его проверку.
Эти правила применимы для любых алгоритмов, но наиболее полезны они при
составлении достаточно сложных и объемных алгоритмов.
Главные из этих правил следующие:
1. При составлении алгоритма необходимо пользоваться
способом последовательной (поэтапной) детализации.
2. Алгоритм должен строиться по модульному принципу.
3. Схема алгоритма должна доставляться на базе ограниченного числа
типовых(стандартных) структур.
1.Способ последовательной детализации
предполагает получение алгоритма в виде многоэтапного, процесса, в
котором на каждом из этапов составляется алгоритм или отдельные его части с
различной степенью детализации.
Укрупненная схема алгоритма составляется укрупненный алгоритм с малой степенью
детализации. На последующих этапах степень детализации увеличивается. Особенно
это относится к отдельным частям алгоритма.
2.алгоритм по модульному принципу
предполагает его построение в виде отдельных, относительно независимых частей
(модулей). В состав модуля включаются части алгоритма, удовлетворяющие следующим
требованиям: функциональной законченности, минимальной связности и
представимости в форме схемы с одним входом и одним выходом.
Требование функциональной законченности означает, что в состав модуля должна
включаться некоторая законченная в смысловом и функциональном отношении часть
общего алгоритма. Выделение таких частей позволяет проводить их параллельную
разработку и допускает относительно простой контроль правильности их
составления. При обнаружении ошибок полной замене или коррекции может подлежать
содержание только «неисправного» модуля, а не всего алгоритма.
Требование минимальной связности означает формирование модулей так, чтобы они
использовали минимальное число общих переменных. Учет этого требования позволяет
строить наглядные и легко «читаемые» алгоритмы, а также выполнять их проверку в
автономном режиме.
Представление модуля схемы, имеющей один вход и один выход, так же как и
требование минимальной связности, обеспечивает улучшение наглядности и
«читаемости» алгоритма. В таких алгоритмах легко прослеживаются
причинно-следственные связи отдельных частей.
3.Правило составления схем алгоритмов
на базе ограниченного числа типовых структур,
имеющих один вход и один выход, обусловлено стремлением обеспечить обозримость и
проверяемость алгоритма. Сложные структуры алгоритмов или их частей могут быть
изображены с помощью трех типовых структур
обработки данных, имеющих один вход и один выход. При этом алгоритмы сложной
структуры также будут иметь один вход и один выход.
К типовым структурам относятся:
1) неразветвленная (линейная) структура обработки данных (рис. 4.6).
Она характеризуется независимостью последовательности обработки данных от
выполнения каких-либо условий;
2) разветвленные нециклические структуры (рис. 4.7).
Как и в структуре первого типа, степень детализации алгоритма может быть
различной. Поэтому внутри символа «Процесс» могут находитьсясвои (внутренние)
разветвления, которые можно на этом этапе детализации не учитывать;
3) разветвленные циклические структуры (рис. 4.8). Структуры этого типа
используются для многократного выполнения одних и тех же вычислений (действий)
при изменяющихся данных.
свойство алгоритма 2
к началу 50-х годов нашего столетия, то есть к моменту выхода на сцену ЭВМ,
как итог развития логики и оснований математики и как непосредственный результат
исследований Гёделя, Чёрча, Тьюринга, Маркова и других пионеров теории
эффективной вычислимости, стал вырисовываться свойство алгоритма.
обладающих следующими свойствами.
1.. Они в принципе строго детерминированы, то есть каждый предыдущий этап
(этапы) полностью определяют последующий.
2. Они потенциально осуществимы — в том смысле, что при достаточно долгом
протекании без
внешних помех приводят (точнее, могут приводить) к фактическому результату.
3. Они имеют атомарное строение— складываются из совокупности элементарных
операций, которых имеется всего несколько видов и которые столь просты и
наглядны, что их нетрудно объяснить любому человеку.
4. Они заключаются в переработке объектов, четко различаемых и опознаваемых и —
в силу этого — легко доступных для человеческих восприятия, запоминания и
мышления.
А существуют ли д р у г и е алгоритммы?
Вопрос этот не случаен. Отрицательный ответ на него будет означать, что в сферу
описанных процессов попадут также и явления, происходящие в нас самих, в
частности наша внутренняя — психическая, интеллектуальная, эмоциональная —
жизнь. Но это кажется оскорбительным, унижающим человеческое достоинство.
Принять полную принципиальную детерминированность психических феноменов— не
означает ли это признание несвободы человеческого поведения?
Разве можно какую-то заводную игрушку, воплощение машины Тьюринга, или
марковскую «игру в слова» сравнивать с деятельностью вольной в своих поступках
личности, например, с творческим дерзанием Пушкина или Достоевского? Но не
только великие художники и мыслители — разве любой из людей, будучи «наедине с
собой», согласится с тем, что все его чувства, поступки, планы, мечты,
стремления могут быть описаны какими-то очень простыми — воистину примитивными!—
рекурсивными функциями?! Человек не приемлет слепого выполнения программы,
бездушия, автоматизма.
Неожиданные для самого себя мысли, поступки, юмор — все эти воплощения
тяги к странности и
непредвиденности заложены в человеческой
индивидуальности.
Все это так, может сказать читатель, но ведь вопрос не в этом. Проблема в
другом: состоит ли грандиозно сложный процесс рождения, жизнедеятельности и
умирания человека (подобно многим другим процессам во Вселенной) из композиции
гигантского числа рекурсивно описываемых процедур — аналогично тому, как
прекрасные, отделанные мрамором и бронзой дворцы с точки зрения физики суть не
что иное, как гигантские количества не имеющих цвета атомов?
Да. в такой постановке вопрос становится серьезным.
Примеры алгоритмов
|