В повседневной жизни алгоритмы в основном делятся на группы, в которых в зависимости от выполнения или невыполнения некоторого условия последовательность команд разделяется на несколько ветвей.
В разветвляющемся алгоритме главным образом проверяется логическое условие, заданное в виде арифметического неравенства. Если он выпол-ся, то алгоритм идёт по одной ветви, если не выпол-ся,- то по другой ветви, в конце обе ветви снова соединяются. В таком алгоритме проверка условий наз-ся командой разветвления. При её записи в алгоритме используются ключевые слова если, то, иначе, все. По способу разветвления команда разветвления делится на два вида: Команда выбора (полная) Команда перехода (неполная)
Полная команда разветвления имеет следующий вид: то 1-я серия если условие иначе 2-я серия все Условие? да нет 1-я серия 2-я серия
Для выполнения алгоритмов в команде разветвления сначала проверяются условия. Если условия выполняются, то выполняются команды 1-й серии, заключённые между ключевыми словами если и иначе.
Если не выполняются то выполняются команды 2-й серии, заключенные между ключевыми словами иначе и все. В схему этого вида разветвляющегося алгоритма обязательно входит блок проверки условия.
В полном виде разветвляющегося алгоритма осуществляется выбор только одной серии из двух. Если высказывание истинно, тогда выполняется 1-я серия, затем осуществляется переход к следующим операциям. Если высказывание ложно, то выполняется 2-я серия, затем производятся следующие действия алгоритма.
если условие то серия все Условие? Серия да нет Если алгоритм состоит из неполной формы команды разветвления, то в случае выполнения условия выполняется «серия» и дальше продолжается выполнение алгоритма. Если условие не выполняется, то не выполняется ни одна команда из «серии», осуществляется действие перехода.
Рассмотрим алгоритм решения квадратного уравнения ах²+вх+с=0 Здесь, если дискриминант больше 0, т.е. положительный, тогда найдём действительные корни (х1,х2) уравнения. Если дискриминант отрицательный, тогда элементы корней уравнения вычислим через другую ветвь, числа α и β выводим на экран. Математически выразим следующим образом: х1,2 = (-b±b²-4ac)/(2a), если b²-4ac 0
Начало Ввод a, b, c d=b²-4ac d0d0 α=-b/2a x1:=(-b+d)/2a β=4ac-b²/2ax2:=(-b-d)/2a α, βx1,x2 Конец нетда
Нередко в задачах проверяются условия, соответствующие трём и более выходам. Например, если выполнение условий х>0, х=0, х
Если х>0 то 1-я серия иначе если х=0 то 2-я серия иначе 3-я серия все Х>0Х>0 1-я серия Х=0 2-я серия3-я серия да нет да