Р ис. 10.5. Структурная схема разветвленного алгоритма
Циклические алгоритмы
Алгоритмы, в которых предусмотрено многоразовое повторение некоторой последовательности действий называют циклическими.
Цикл– это форма организации действия, при котором та самая последовательность действий выполняется несколько раз до тех пор, пока выполняется некоторое условие. Различают два типа циклов:
Цикл-ПОКА.
В структуре цикл-ПОКА для выполнения указания S сначала необходимо определить, истинно или ошибочно утверждения Р. Если Р истинно, то выполняется указание S1 и снова возвращаются к определению истинности утверждения Р. Если же утверждение Р ошибочно, то выполнение указания S считается законченным (рис. 10.6).
Цикл-ДО
В структуре цикл-ДО сначала выполняется указание S1, а потом определяется истинность утверждения Р. Если утверждение Р ошибочно, то снова выполняется указание S1 и определяется истинность утверждения Р. Если утверждение Р истинно, то выполнение указания S считается законченным (рис. 10.7).
Рис. 10.6. Цикл – ПОКА Черт. 10.7. Цикл – ДО
Рассмотрим задачу, которая формализована с помощью разветвленного алгоритма.
Задача 3. Подать графическим способом алгоритм определения значений давления крови в аорте в диапазоне 0≤ t ≤1 (c), с шагом ∆t=0.1 (c). Р0 - начальное значение давления крови, х - гидравлическое сопротивление аорты, k - эластичность аорты.
Согласно условию задачи одно и то же действие выполняется многократно при последовательно возрастающем значении t.
Реализация данной задача изображена на рис. 10.8.
Р ис. 10.8. Структурнаясхема циклического алгоритма.
Свойства алгоритмов
Любой алгоритм должен иметь такие основные свойства:
Определенность. Алгоритм не должен содержать указаний, содержание которых может быть воспринято неоднозначно. Кроме того, после выполнения очередного указания алгоритма не должны возникать никаких разногласий относительного того, какое указание будет выполняться следующим. Иначе говоря, при выполнении алгоритма никогда не должна появляться потребность в принятии любых решений, которые непредусмотрены составителем алгоритма.
Массовость.Алгоритм составляется не для решения одной конкретной задачи, а для целого класса задач одного типа. В простом случае эта вариативность алгоритма обеспечивает возможность использования разных допустимых исходных данных.
Дискретность. Процесс, который описывается алгоритмом, должен быть разделен на последовательность отдельных действий. Описания, которые при этом возникают, представляют собой последовательность четко разделенных друг от друга указаний, которые образовывают дискретную структуру алгоритмического процесса - лишь выполнив требования одного указания, можно перейти к следующему.
Результативность– обязательное свойство алгоритмов. Её суть состоит в том, что при точном выполнении всех указаний алгоритма процесс принятия решения (получение результата) должен закончиться через конечное количество шагов и при этом должен быть получен ответ на поставленные в задачи вопросы.