Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
хах_Архив подан... / экзамен_2013 / алгоритмизация.doc
Скачиваний:
45
Добавлен:
13.05.2015
Размер:
96.77 Кб
Скачать

1.3. Базовые канонические структуры алгоритмов.

 Доказано, что любую программу можно написать с использованием трех управляющих структур:

            - следования, или последовательности операторов;             - развилки, или условного оператора;             - повторения, или оператора цикла.

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

1) Следование

A; B;

        Действия А и В могут быть:             - отдельным оператором;             - вызовом с возвратом некоторой процедуры;             - другой управляющей структурой.

2) развилка

IF P then A else B;

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

IF P then A ;

3) повторение

цикл – пока

 

 

 

 

While P do A ;

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

циклдо

Repeat A until P;

Повторение типа Repeat until всегда выполняется хотя бы 1 раз. Действие А перестает выполняться, как только предикат становится истинным.

4) выбор – переключатель case (обобщение развилки), структура, облегчающая программирование без ущерба для ясности программы. Структура выбор полезна в том случае, когда требуется выбрать одну из нескольких альтернатив.

 

В зависимости от значения Р выполняется одно из действий А, В, …Z. После чего происходит переход к выполнению следующей управляющей структуры.