1. Программирование разветвляющихся алгоритмов
Понятие разветвляющегося алгоритма и программы
Разветвляющимся называется алгоритм, в котором последовательность и количество выполняемых команд зависит от выполнения или невыполнения некоторых условий. В разветвляющихся алгоритмах используются команды ветвления и выбора из большого количества вариантов. Графическое изображение команд ветвления представлено на рис. 1.1.
Рис.1.1. Команды ветвления: а) – в полной форме; б) , в) – в сокращенной– форме
Для программирования ветвлений используется оператор if, а для программирования выбора – операторы switch и break.
Логические выражения
Логическое выражение (условие)- выражение, которое содержит знаки операций отношения и/или знаки логических операций. Значением логического выражения может быть только 1, если логическое выражение есть ИСТИНА (true), или 0, если логическое выражение ЛОЖЬ (false).
Операции отношения являются бинарными и обозначаются следующим образом (приведены в порядке уменьшения приоритета):
< (меньше);
<= (меньше или равно);
> (больше);
>= (больше или равно);
== (равно);
!= (не равно).
Примеры: a<b, x!=5, y==c, t>=8.1, d<>(w-c).
Логические операции – это операции :
&& - логическое И (бинарная операция);
|| - логическое ИЛИ (бинарная операция);
! - логическое НЕ (унарная операция.
Логические операции имеют более низкий приоритет, чем операции отношения. Результаты выполнения логических операций приведены в таблицах 1.1-1.3.
Таблица 1.1 Таблица 1.2 Таблица 1.3
|
|
|
Например, логическое выражение a>3 && c<7 при a=5, c=6 будет иметь значение ИСТИНА, а при a=3, c=8 – ЛОЖЬ; логическое выражение a>3 || c<7 при a=5, c=6 будет иметь значение ИСТИНА, при a=2, c=6 – ЛОЖЬ; при a=7 логическое выражение !a>2 будет иметь значение ЛОЖЬ.
При составлении логических выражений следует учитывать приоритет выполнения операций (табл. 1.4).
Примеры записи логических выражений приведены в таблице 1.5.
Таблица 1.5
Условие |
Логическое выражение |
x>=a && x<=b | |
x<a || x>b | |
или |
x>=a && x<=b || x>=c && x<=d |
Хотя бы одно из чисел x, y положительное |
x>0 || y>0 |
Только одно из чисел x, y положительное |
(x>0 && !y>0) || (y>0 && !x>0) |
Ни одно из чисел x, y не является четным |
x % 2 !=0 && y % 2 !=0 |
Точка (x,y) принадлежит заштрихованной области
|
x>=0 && x<=a && y>=0 && y<=b/a*x |
1.3. Оператор if
Операторif называется условным оператором и используется для программирования ветвлений. Имеет две формы записи – сокращенную и полную.
Сокращенная форма записи оператораif имеет вид: