1. Задачи на ветвление
Разветвляющимся называется такой алгоритм, в котором в зависимости от истинности или ложности заданного условия выбирается один из нескольких возможных вариантов (путей) вычислительного процесса. Каждый такой вариант называется ветвью алгоритма. Возможных вариантов может быть два или три.
Ветвление - такая форма организации действий, при которой в зависимости от выполнения или невыполнения некоторого условия совершается либо одна, либо другая последовательность действий.
Признаком разветвляющегося алгоритма является наличие операций проверки условия.
Условие – это выражение логического типа. Оно может включать в себя константы, имена переменных, арифметические операции, операции отношения, логические операции, скобки. Условие может быть истинным или ложным, то есть принимать одно из двух значений: ИСТИНА или ЛОЖЬ.
Различают два вида условий: простые и составные.
Простым условием называется выражение, составленное из двух арифметических выражений или двух текстовых величин, связанных одним из знаков: <, £ , >, ³, =, ¹. Такое условие часто называют операцией отношения.
Составными условиями называются условия, состоящие из нескольких простых и соединенные знаками логических операций И, ИЛИ, НЕ.
ПРИМЕРЫ составных условий.
(A > 5) И (B < 2)
(X = Y) ИЛИ (50 £ C – 1)
НЕ («собака» = «конура») И («кошка» = D)
Составное условие вида «X И Y» истинно тогда и только тогда, когда истинны оба условия X и Y, в остальных случаях – ложно.
Составное условие вида «X ИЛИ Y» истинно тогда, когда истинно хотя бы одно условие X или Y. Условие вида «НЕ X» истинно, если X ложно, и наоборот.
Для обозначения операции проверки условия в блок-схеме алгоритма используется блок, изображаемый ромбом, внутри которого указывается проверяемое условие. Этот блок имеет один вход и два или три выхода.
Если выходов два, то они обозначаются ДА и НЕТ. Если условие истинно, то вычислительный процесс «идет» по ветви ДА; если ложно – по ветви НЕТ.
Если выходов три (это чаще всего бывает, когда в условии переменная или выражение сравниваются с нулем), то они обозначаются: >0, <0, =0.
При написании разветвляющихся программ используется условный оператор.
Пример 1. Вычислить значение функции
![]() |
|
|
1. Ввести x.
2. Если x £ –12, то y:=–x2
3. Если x<0, то y:=x4 4. y := x–2 5. Вывести y
6. Конец |
При тестировании алгоритмов с развилкой необходимо подбирать такие исходные данные, чтобы можно было проверить все ветви. В приведенном выше примере должно быть по крайней мере три тестовых набора.
Материалы на данной страницы взяты из открытых источников либо размещены пользователем в соответствии с договором-офертой сайта. Вы можете сообщить о нарушении.