ПРОГРАММИРОВАНИЕ РАЗВЕТВЛЯЮЩИХСЯ АЛГОРИТМОВ
НАЧАЛА ПРОГРАММИРОВАНИЯ
Ключевые слова
- условный оператор
- неполный условный оператор
- составной оператор
- вложенные ветвления
Общий вид условного оператора
Полная форма условного оператора:
if then else
Неполная форма условного оператора:
if then
!
Перед else знак «;» не ставится.
Условия - логические выражения
Простые
Сложные
Операции
отношений
Логические
операции
'); readln (a, b); write ('Введите x'); readln (x); if (x=a) and (xthen writeln ('Точка принадлежит отрезку') else writeln ('Точка не принадлежит отрезку') еnd. a, b, x (x=a) and (xда нет НЕТ ДА " width="640"
Условный оператор
program n_9;
var x, a, b: real;
begin
writeln ('Определение принадлежности
точки отрезку');
write ('Введите а, b');
readln (a, b);
write ('Введите x');
readln (x);
if (x=a) and (xthen
writeln ('Точка принадлежит отрезку')
else writeln ('Точка не принадлежит отрезку')
еnd.
a, b, x
(x=a) and (x
да
нет
НЕТ
ДА
'); readln (a, b, c); y:=a; if (by) then y:=b; if (cy) then y:=c; writeln ('y=', y) end. Y:=A нет да BY Y:=B да нет CY Y:=C " width="640"
Неполный условный оператор
program n_10;
var y, a, b, c: integer;
begin
writeln ('Нахождение наибольшей из трёх величин');
write ('Введите а, b, с');
readln (a, b, c);
y:=a;
if (by) then y:=b;
if (cy) then y:=c;
writeln ('y=', y)
end.
Y:=A
нет
да
BY
Y:=B
да
нет
CY
Y:=C
Составной оператор
В условном операторе и после then , и после else
можно использовать только один оператор .
Если в условном операторе после then или после else
нужно выполнить несколько операторов , то
используют составной оператор – конструкцию вида:
begin end
Блок-схема решения КВУР
Начало
Введите коэффициенты a, b, c
d : =b*b-4*a*c
нет
да
d
нет
да
d : = 0
Вывод
«Корней нет»
x : =-b/2/a
Вывод
«Корень уравнения х=», х
х1:= (-b+sqrt(d) ) /2/a
х 2 := (-b-sqrt(d) ) /2/a
Вывод
«Корни уравнения:
х1=», х1, «х2=», х2
Конец
'); readln (a, b, c); d:=b*b-4*a*c; if dthen writeln ('Корней нет') else if d=0 then begin x:=-b/2/a; writeln ('Корень уравнения x=', x:9:3) end else begin x1:=(-b+sqrt(d))/2/a; x2:=(-b-sqrt(d))/2/a; writeln ('Корни уравнения:'); writeln ('x1=', x1:9:3); writeln ('x2=', x2:9:3) end end. " width="640"
program n_11;
var a, b, c: real;
var d: real;
var x, x1, x2: real;
begin
writeln ('Решение квадратного уравнения');
write ('Введите коэффициенты a, b, c ');
readln (a, b, c);
d:=b*b-4*a*c;
if dthen writeln ('Корней нет')
else
if d=0 then
begin
x:=-b/2/a;
writeln ('Корень уравнения x=', x:9:3)
end
else
begin
x1:=(-b+sqrt(d))/2/a;
x2:=(-b-sqrt(d))/2/a;
writeln ('Корни уравнения:');
writeln ('x1=', x1:9:3);
writeln ('x2=', x2:9:3)
end
end.
Вложенные ветвления
if then
if then
else
else
!
else всегда относится к ближайшему оператору if
'); readln (a, b); if a0 then begin x:=-b/a; writeln ('Корень уравнения x=', x:9:3) end else if b0 then writeln ('Корней нет') else writeln ('x – любое число'); end . Любое число Корней нет " width="640"
Решение линейного уравнения
Список данных
a, b, x - вещ
a, b
да
нет
a 0
да
нет
b0
x:= - b/a
program n_12;
var a, b, x: real;
begin
writeln ('Решение линейного уравнения');
write ('Введите коэффициенты a , b');
readln (a, b);
if a0 then
begin
x:=-b/a;
writeln ('Корень уравнения x=', x:9:3)
end
else if b0 then writeln ('Корней нет')
else writeln ('x – любое число');
end .
Любое число
Корней нет
Самое главное
При записи на языке Паскаль разветвляющихся алгоритмов используют условный оператор:
if then else
Для записи неполных ветвлений используется неполный условный оператор:
if then
Если при некотором условии требуется выполнить определённую последовательных операторов, то их объединяют в один составной оператор, имеющий вид:
begin end
Опорный конспект
Условный оператор
Полная форма
if then else
Неполная форма
if then
Составной оператор
begin en d