Ветвление
Материал из IOC
Версия от 14:39, 21 декабря 2016; Золотов В.О. (обсуждение | вклад) (Новая страница: «Алгоритм ветвления используется для решения задач, в которых выполнение каких-либо дейс…»)
Алгоритм ветвления используется для решения задач, в которых выполнение каких-либо действий зависит от значения исходных данных.
Для реализации алгоритма ветвления в алгоритмическом языке применяется оператор выбора (или условный оператор) ЕСЛИ.
Общий вид оператора если:
если <условие>
то
- <оператор1>
иначе
- <оператор2>
все
<условие> - это логическое выражение, которое может содержать операции сравнения и логические операции:
Операции сравнения | Логические операции |
> больше | операция И |
< меньше | операция ИЛИ |
= равно | операция НЕ |
>= больше или равно | |
<= меньше или равно | |
<> не равно |
Логическое выражение может принимать только два значения да (истина, когда условие верно) и нет (ложь, когда условие не верно).
Например.
Если переменным присвоены следующие значения
X:=5; Y:=-7; Z:=23;
X<Y | результат – Нет |
X>Y | результат – Да |
X + Y = Z | результат – Нет |
X + Y <> Z | результат – Да |
Z <= X + 4*Y | результат – Нет |
Z >= X + 4*Y | результат – Да |
(X > Y) и (Z > Y) | результат – Да |
(X > Y) или (Z > Y) | результат – Да |
(X < Y) и (Z > Y) | результат – Нет |
(X < Y) или (Z > Y) | результат – Да |
Оператор ЕСЛИ работает следующим образом:
- Проверяется <условие>, и если оно верно (т.е. равно Да), то будет выполняться <оператор1>, иначе (если оно не верно, т.е. равно Нет) будет выполняться <оператор2>.
Примеры.
Если переменным присвоены следующие значения
X:=5; Y:=-7; Z:=23;
1. если X<Y то
- вывод "X меньше Y"
- вывод "X не меньше Y"
т.к. условие не выполняется, на экран будет выведена вторая надпись
2. если Z >= X + 4*Y то
- вывод "Z=", Z
- вывод "Значение X в квадрате равно", X*X
т.к. условие выполняется, на экран будет выведена первая надпись
3. если (X < Y) или (Z > Y) то
- вывод "Одно из условий выполнено"
т.к. одно из условий выполняется (Z >Y), надпись будет выведена экран.
4. если (X < Y) и (Z > Y) то
- вывод "Одно из условий выполнено"
т.к. одно из условий не выполняется (X<Y), надпись не будет выведена экран.
- Если по условию задачи вместо <оператора1> или <оператора2> (см. общий вид) необходимо чтобы выполнилось не одно, а несколько действий (операторов), то эти операторы записываются на отдельных строчках или разделяются точкой с запятой:
если X>Y то
- X:=Y+Z
- вывод 'Значение X изменилось и стало равно ', X
или так:
если X>Y то
- X:=Y+Z; вывод 'Значение X изменилось и стало равно ', X
Пример решения задачи с использованием оператора выбора ЕСЛИ.

Решение.
В зависимости от того, какое условие мы будем проверять первым, могут быть различные варианты решения, хотя результат работы программы будет один и тот же. Выбор варианта последовательности проверки условий определяется наилучшей компактностью записи и проверкой меньшего количества условий.
вещ X, F
алг
нач
- вывод "Вычисление значения функции при любых Х", нс
- вывод "Введите значение Х", нс
- ввод X
- если X<=0
- то
- F:=5*X**3-8*X+1
- F:=5*X**3-8*X+1
- иначе
- F:=sqrt(X)
- F:=sqrt(X)
- все
- вывод "Значение функции при Х=", X, " равно ", F
Презентация с поясняющим примером
Задания для тренировки
Категория: Алгоритмизация