§ 3. Асноўныя алгарытмічныя канструкцыі

Алгоритмические конструкции

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

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

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

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

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

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

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

Пример 3.1 Блок-схемы алгоритмических конструкций.

Следование

Ветвление

Цикл

  • Цикл с параметром (значение параметра изменяется от 1 до N):

  • Цикл с предусловием:

  • Цикл с постусловием:

Кроме блок-схем, для графического представления алгоритмов используют структурограммы (NS-диаграммы, диаграммы Насси — Шнейдермана).

Примеры структурограмм

Команда ветвления:

Команда цикла с предусловием:

3.1. Алгарытмічныя канструкцыі

Як вам ужо вядома з курса інфарматыкі, любы алгарытм можа быць запісаны з выкарыстаннем трох базавых алгарытмічных канструкцый: паслядоўнасць, цыкл і галінаванне (прыклад 3.1).

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

Алгарытмічная канструкцыя галінавання забяспечвае выкананне адной ці іншай паслядоўнасці каманд у залежнасці ад праўдзівасці ці непраўдзівасці некаторай умовы. Аператар галінавання — каманда, якая рэалізуе алгарытмічную канструкцыю галінавання на мове праграміравання.

Алгарытмічная канструкцыя паўтарэнне (цыкл) уяўляе сабой паслядоўнасць дзеянняў, выкананых шматразова. Саму паслядоўнасць называюць целам цыкла. Аператар цыкла — гэта каманда, якая рэалізуе алгарытмічную канструкцыю паўтарэння на мове праграміравання.

Існуюць розныя магчымасці кіраваць тым, колькі разоў будзе паўтарацца цела цыкла. Можа быць зададзена ўмова працягвання ці заканчэння работы цыкла, а таксама колькасць паўтарэнняў цела цыкла. Вылучаюць наступныя цыклы: цыкл з перадумовай, цыкл з постумовай і цыкл з параметрам. Выбар цыкла залежыць ад задачы. Шмат у якіх выпадках цыклы ўзаемазамяняльныя. Пры выбары цыкла можна арыентавацца на наступнае:

  • цыкл з параметрам выкарыстоўваецца тады, калі вядома колькасць паўтарэнняў;
  • цыкл з перадумовай выкарыстоўваецца ў тым выпадку, калі вядома ўмова працягвання работы;
  • цыкл з постумовай выкарыстоўваецца ў тым выпадку, калі вядома ўмова працягвання работы.

Прыклад 3.1. Блок-схемы алгарытмічных канструкцый.

Паслядоўнасць

Галінаванне

Цыкл 

1. Цыкл з параметрам (значэнне параметра змяняецца ад 1 да N):

 

2. Цыкл з перадумовай:

3. Цыкл з постумовай:

Акрамя блок-схем, для графічнага ўяўлення алгарытмаў выкарыстоўваюць структураграмы (— S-дыяграмы, дыяграмы Насі — Шнэйдэрмана).

Прыклады структураграм

Каманда галінавання:

 

Каманда цыкла з перадумовай: