Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Metodichka_GOS.doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
3.98 Mб
Скачать

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

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

• дискретность - возможность представления алгоритма в виде последовательности отдельных выполняемых, логически завершенных действий-шагов;

• понятность - для исполнителя алгоритма;

• точность - точно определен порядок следования действий-шагов от начала до завершения исполнения алгоритма;

• детерминированность - однозначность результата при заданных исходных данных;

• результативность - после исполнения конечного числа шагов алгоритма получение конкретного результата - либо решение задачи, либо невозможность дальнейшего продолжения алгоритма;

• массовость - возможность решения множества однотипных задач путем варьирования исходных данных в определенных пределах.

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

6 Структура алгоритма (линейная разветвляющаяся)

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

S

В ход Выход

Рис. Функциональный блок

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

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

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

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

Рис. Схема линейной структуры

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

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]