Основные типы и пример циклических алгоритмов

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

Понятие алгоритма

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

Циклические алгоритмы

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

Виды циклических алгоритмов

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

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

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

Рассмотрим вывод на печать чисел от -5 до 0 как пример циклических алгоритмов с предусловием:

пример циклических алгоритмов
Элементы алгоритма:

  1. Задаем начальное значение базовой переменной j, равное -5.
  2. Проверяем условие цикла. Условие положительное, и тело цикла выполняется первый раз.
  3. Далее прибавляем к переменной j единицу, снова проверяем условие цикла.
  4. Цикл продолжает выполняться, пока значение j меньше нуля или равно ему, в противном случае выходим из цикла по ветке FALSE

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

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

Разберем расчет суммы от 1 до числа n как пример циклических алгоритмов, в которых используются постусловие:

алгоритм называется циклическим если

  1. Вводим конечное число расчета суммы n и задаем нулевые начальные значения итоговой суммы sum и счетчика цикла i.
  2. Цикл выполняется до первой проверки условия.
  3. Проверяем условие цикла, т. е. значение счетчика i меньше или равен n.
  4. Если результат условия положительный, выполняем цикл еще раз, иначе заканчиваем цикл и выводим сумму на дисплей или печать.

Безусловный цикл

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

Такой алгоритм содержит три обязательных элемента:

  1. Стартовое значение, которое называют параметром цикла, т. к. именно эта переменная изменяется после каждого выполнения цикла и определяет момент его завершения.
  2. Значение, при котором цикл завершается.
  3. Шаг цикла.

что такое циклический алгоритм

На каждом шаге программа проверяет, не превосходит ли стартовое значение конечное. И если да, то цикл завершается. В противном случае к стартовому значению прибавляем величину шага и цикл повторяется. Особо следует отметить, что любой безусловный цикл можно заменить условным с пред- или постусловием.

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

Расчет факториала

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

  • Исходные данные: data – целое число, для которого определяется факториал.
  • Системные переменные: параметр цикла i, принимающий значения от 1 до data c шагом 1.
  • Результат: переменная factorial – факториал числа data, являющийся произведением целых чисел от 1 до data.

пример циклических алгоритмов
Рассмотрим алгоритм по шагам:

  1. Алгоритм получил число data, для которого необходимо вычислить факториал.
  2. Переменной factorial, в которой будет храниться итоговый результат, присвоено значение единицы.
  3. Организовываем цикл с параметром i и стартовым значением 1. Конечным значением будет являться исходное число data. Как только значение счетчика i будет больше, цикл завершается.
  4. Выполняется цикл вычисления факториала – перемножаются текущие значения factorial и счетчика i.
  5. К значению счетчика добавляем единицу, проверям условие цикла и, если результат положительный, завершаем его.
  6. После завершения последней итерации цикла значение факториала data! остается в factorial и выводится на дисплей или печать.

Статья закончилась. Вопросы остались?
Комментарии 0
Подписаться
Я хочу получать
Правила публикации
Редактирование комментария возможно в течении пяти минут после его создания, либо до момента появления ответа на данный комментарий.