Similar presentations:
Программирование. Ветвления
1. Программирование
Ветвления2. Условный оператор
2Условный оператор
В
большинстве реальных задач порядок
действий может несколько изменяться, в
зависимости от того, какие данные поступили.
Для этой цели в языках программирования
предусмотрены
условные
операторы
(ветвления).
3. Условный оператор
3Условный оператор
Например, для того, чтобы записать в
переменную M максимальное (наибольшее) из
значений переменных a и b, можно
использовать оператор:
если a > b то
M:= a
иначе
M:= b
все
if a > b then
M:= a
else
M:= b;
Обратите внимание, что в языке Паскаль перед
ключевым словом else точка с запятой не
ставится.
4. Условный оператор
4Условный оператор
Кроме знаков < и >, в условиях можно
использовать и другие знаки отношений:
<= (меньше или равно),
>= (больше или равно),
= (равно)
<> (не равно, два знака, < и > без пробела).
В этом примере условный оператор записан в
полной форме: в обоих случаях (истинно
условие или ложно) нужно выполнить
некоторые действия.
5. Условный оператор
5Условный оператор
Программа выбора максимального
может быть написана иначе:
M:= a
если b > a то
M:= b
все
значения
M:= a;
if b > a then
M:= b;
Здесь использован условный оператор в
неполной форме: в случае, когда условие
ложно, ничего делать не требуется.
Для того чтобы сделать текст программы более
понятным, всё тело условного оператора
сдвинуто вправо.
6. Составной оператор
6Составной оператор
Часто нужно выполнить сразу несколько
действий.
В задаче сортировки значений переменных a и b
по возрастанию нужно поменять местами
значения этих переменных, если a > b:
если a > b то
c := a
a := b
b := c
все
if a > b then begin
c := a;
a := b;
b := c;
end;
в Паскале после ключевого слова then нужно
записать
составной
оператор,
«зону
действия» которого ограничивают слова begin
и end.
7. Вложенные условные операторы
7Вложенные условные операторы
В теле условного оператора могут находиться
любые операторы, в том числе и другие
условные операторы.
Например, пусть возраст Андрея записан в
переменной a, а возраст Бориса – в
переменной b. Нужно определить, кто из них
старше.
Одним условным оператором тут не обойтись,
потому что есть три возможных результата:
старше Андрей, старше Борис и оба одного
возраста.
8. Вложенные условные операторы
8Вложенные условные операторы
В теле условного оператора могут находиться
любые операторы, в том числе и другие
условные операторы.
если a > b то
вывод 'Андрей старше‘
иначе
если a = b то
вывод 'Одного возраста‘
иначе
вывод 'Борис старше'
все
все
if a > b then
writeln('Андрей старше')
else
if a = b then
writeln('Одного возраста')
else
writeln('Борис старше');
Условный оператор, проверяющий равенство,
находится внутри блока else, поэтому он
называется вложенным условным оператором.
9. Вложенные условные операторы
9Вложенные условные операторы
При
работе
с
вложенными
условными
операторами в языке Паскаль нужно помнить
правило: любой блок else относится к
ближайшему предыдущему оператору if, у
которого такого блока еще не было.
if a > b then
write('А')
else
if a = b then
write('=')
else
write('Б');