Оператор ВЕТВЛЕНИЯ (условный оператор)




Базовая структура ВЕТВЛЕНИЕ

Такая форма организации действий, при которой в зависимости от выполнения или невыполнения некоторого условия совершается либо одна, либо другая последовательность действий. Каждый из путей ведет к общему выходу. Структура ветвление существует в четырёх основных вариантах

§ если – то;

§ если – то – иначе;

Оператор ВЕТВЛЕНИЯ (условный оператор)

Оператор ветвления (условный оператор) имеет следующий формат:

If < логическое выражение > then < оператор 1 > else < оператор 2 >;

Здесь if, then и else — служебные слова (если, то, иначе).

Условный оператор работает следующим образом:

1) вычисляется логическое выражение;

2) если оно имеет значение true (истина), то выполняется <оператор 1>;

3) если имеет значение false (ложь), то выполняется <оператор 2>.

Ветвь else может быть опущена.

Если в качестве оператора должна выполниться серия операторов, то они заключаются в операторные скобки Begin – End;

Неполная форма оператора ветвления:

If < логическое выражение > then < оператор >;

 

Пример. Вычислить квадратные корни из двух чисел x и y.

Var x, y: real;

Begin

write (‘введите значения x, y ’);

read(x,y);

if (x>0) and (y>0) then begin x:=sqrt(x); y:=sqrt(y);

writeln(‘x= ‘, x, ‘y= ‘, y);

end

else writeln(‘корни извлечь нельзя’);

end.

Внутри условного оператора точка с запятой не ставится. После операторов then и else выполняется только один оператор. Если необходимо выполнить 2 и более, используют операторные скобки begin…end. Эта конструкция называется составным оператором.

Пример. Найти max – максимальную из величин A, B, C.

If A>B then if A>C then max:=A Else max:=C

Else if B>C then max:=B Else max:=C;

В данном примере в каждой из двух ветвей используется условный оператор повторно. Такое многократное вложение условных операторов затрудняет чтение программы, поэтому желательно выбирать, когда возможно, варианты с меньшей глубиной вложения, даже если это увеличивает время программы. Альтернативный вариант решения задачи в последнем примере может выглядеть, например, так.

max:=a;

min:=a;

if max<b then max:=b;

if max<c then max:=c;

if min>b then min:=b;

if min>c then min:=c;

или так

If (C>A) and (C>B) then max:=C;

If (B>A) and (B>=C) then max:=B;

If (A>=B) and (A>=C) then max:=A;

 

 
 


Задания:

1. Из двух данных вещественных чисел выбрать наибольшее.

2. Большее из двух данных вещественных чисел возвести в квадрат, а меньшее – в куб.

3. Написать программу, проверяющую, принадлежит ли число, введенное с клавиатуры, интервалу [0,5].
4. Написать программу решения квадратного уравнения
ах2 + bх + с = 0.

5. Даны целые числа а, b, с. Если а b c, то все числа заменить их квадратами, если а > b > c, то каждое число заменить меньшим из них, в противном случае сменить знак каждого числа.

6. Дано двузначное число. Определить:
а) является ли сумма его цифр двузначным числом:
б) больше ли числа а сумма его цифр.

7. Дано двузначное число. Определить:
а) кратна ли трем сумма его цифр:
б) кратна ли сумма его цифр числу а.

8. Дано трехзначное число. Выяснить, является ли оно палиндромом («перевертышем»), т. е. таким числом, десятичная запись которого читается одинаково слева направо и справа налево.

9. Даны три числа. Написать программу для подсчета количества чисел, равных нулю.

10. Вывести на экран номер четверти, которой принадлежит точка с координатами (х,у), при условии, что х≠0 и у≠0.

 



Поделиться:




Поиск по сайту

©2015-2024 poisk-ru.ru
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.
Дата создания страницы: 2021-04-15 Нарушение авторских прав и Нарушение персональных данных


Поиск по сайту: