Разветвляющимися называются алгоритмы, которые содержат условие в зависимости от которого действие идет по одному из альтернативных направлений. Для реализации таких процессов используется оператор условного перехода.
Условный оператор if работает следующим образом:
1.Сначала вычисляется значение <условия>. В качестве условия может выступать любое выражение, возвращающее значение типа Boolean.
2.Затем, если в результате получена «истина» (True), выполняется оператор, стоящий после ключевого слова then, а если «ложь» (False), то выполняется оператор, стоящий после ключевого слова else. Если же ветвь else отсутствует, то не выполняется ничего.
В общем случае, в качестве операторов 1 и 2 может быть использован любой оператор языка Паскаль. Однако часто возникает необходимость вставить в какую-нибудь ветвь не один, а несколько операторов. В этом случае пользуются так называемым составным оператором.
Составной оператор - это заключенная между зарезервированными словами begin - end последовательность операторов, отделенная друг от друга точкой с запятой.
Условный оператор может входить как составная часть, в одну из ветвей другого условного оператора. В этом случае имеет место сложное разветвление. Тогда ветвь else всегда относится к ближайшему if не имеющему else.
Рассмотрим алгоритм, в ветви then которого содержится еще один условный оператор, в котором конструкция else отсутствует. Для корректной реализации таких алгоритмов необходимо использовать операторные скобки (begin end).