§ 3. Асноўныя алгарытмічныя канструкцыі
Алгоритмические конструкции
Как вам уже известно из курса информатики, любой алгоритм может быть записан с использованием трех базовых алгоритмических конструкций: следование, цикл и ветвление (пример 3.1). Команды, составляющие алгоритмическую конструкцию следование, выполняются последовательно, друг за другом, в том порядке, в котором они записаны. Команды цикла и ветвления управляют порядком выполнения других команд в программе и относятся к командам управления (управляющим конструкциями). Алгоритмическая конструкция ветвления обеспечивает выполнение одной или другой последовательности команд в зависимости от истинности или ложности некоторого условия. Оператор ветвления — команда, реализующая алгоритмическую конструкцию ветвления на языке программирования. Алгоритмическая конструкция повторение (цикл) представляет собой последовательность действий, выполняемых многократно. Саму последовательность называют телом цикла. Оператор цикла — это команда, реализующая алгоритмическую конструкцию повторения на языке программирования. Существуют разные возможности управлять тем, сколько раз будет повторяться тело цикла. Может быть задано условие продолжения или окончания работы цикла, а также число повторений тела цикла. В зависимости от этого выделяют цикл с предусловием, цикл с постусловием и цикл с параметром. Существуют разные возможности управлять тем, сколько раз будет повторяться тело цикла. Может быть задано условие продолжения или окончания работы цикла, а также число повторений тела цикла. Выделяют следующие циклы: цикл с предусловием, цикл с постусловием и цикл с параметром. Выбор цикла зависит от задачи. Во многих случаях циклы взаимозаменяемы. При выборе цикла можно ориентироваться на следующее:
|
Пример 3.1 Блок-схемы алгоритмических конструкций. Следование Ветвление Цикл
Кроме блок-схем, для графического представления алгоритмов используют структурограммы (N — S-диаграммы, диаграммы Насси — Шнейдермана). Примеры структурограмм Команда ветвления: Команда цикла с предусловием: |
3.1. Алгарытмічныя канструкцыі
Як вам ужо вядома з курса інфарматыкі, любы алгарытм можа быць запісаны з выкарыстаннем трох базавых алгарытмічных канструкцый: паслядоўнасць, цыкл і галінаванне (прыклад 3.1). Каманды, якія складаюць алгарытмічную канструкцыю паслядоўнасць, выконваюцца паслядоўна, адна за адной, у тым парадку, у якім яны запісаны. Каманды цыкла і галінавання кіруюць парадкам выканання іншых каманд у праграме і належаць да каманд кіравання (канструкцый, якія кіруюць). Алгарытмічная канструкцыя галінавання забяспечвае выкананне адной ці іншай паслядоўнасці каманд у залежнасці ад праўдзівасці ці непраўдзівасці некаторай умовы. Аператар галінавання — каманда, якая рэалізуе алгарытмічную канструкцыю галінавання на мове праграміравання. Алгарытмічная канструкцыя паўтарэнне (цыкл) уяўляе сабой паслядоўнасць дзеянняў, выкананых шматразова. Саму паслядоўнасць называюць целам цыкла. Аператар цыкла — гэта каманда, якая рэалізуе алгарытмічную канструкцыю паўтарэння на мове праграміравання. Існуюць розныя магчымасці кіраваць тым, колькі разоў будзе паўтарацца цела цыкла. Можа быць зададзена ўмова працягвання ці заканчэння работы цыкла, а таксама колькасць паўтарэнняў цела цыкла. Вылучаюць наступныя цыклы: цыкл з перадумовай, цыкл з постумовай і цыкл з параметрам. Выбар цыкла залежыць ад задачы. Шмат у якіх выпадках цыклы ўзаемазамяняльныя. Пры выбары цыкла можна арыентавацца на наступнае:
|
Прыклад 3.1. Блок-схемы алгарытмічных канструкцый. Паслядоўнасць Галінаванне Цыкл 1. Цыкл з параметрам (значэнне параметра змяняецца ад 1 да N): 2. Цыкл з перадумовай: 3. Цыкл з постумовай: |