Студопедия

Главная страница Случайная страница

КАТЕГОРИИ:

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Условный оператор






Оператор условной передачи управления (рис. 1) используют для программирования ветвлений, т. е. ситуаций, когда возникает необходимость при определенных условиях выполнять различные действия. Условие записывают в виде логического выражения, в зависимости от результата которого осуществляется выбор одной из ветвей: если результат true, то выполняется оператор, следующий за служебным словом then, иначе - оператор, следующий за служебным словом else.

Структура условного оператора имеет следующий вид:

IF < условие> THEN < оператор1> ELSE < оператор2>,

где IF, THEN, ELSE - зарезервированные слова (если, то, иначе); < условие> - произвольное выражение логического типа; < оператор1>, < оператор2> - любые операторы языка Турбо Паскаль.

 

В каждой ветви допускается запись одного оператора (в том числе и другого if) или составного оператора.

Перед else точка с запятой не ставится никогда, так как в этом случае запись условного оператора продолжается.

Рис. 1. Синтаксическая диаграмма < Оператор условной передачи управления>

 

 

 

рис.2 рис.3

 

В соответствии с синтаксической диаграммой допускается использовать оператор условной передачи управления с неуказанной (пустой) ветвью else. В некоторых случаях использование укороченных конструкций может привести к неоднозначности, например, не понятно, какому из двух вариантов схем алгоритма (рис. 2) соответствует фрагмент:

if< условие1> then if < условие 2> then < действие 1> else < действие 2>;

В этих случаях используется так называемое «правило вложенности»: альтернатива else всегда относится к ближайшему if, что соответствует варианту алгоритма на рис. 2, а. Если необходимо реализовать вариант алгоритма, изображенный на рис. 3, то используют операторные скобки:

if< условие1> then begin

if < условие 2> then

< действие 1> end else < действие 2>;

Пример 1. Разработать программу, которая вычисляет значение функции, заданной следующим образом:

Программа должна начинаться с ввода значения аргумента. Затем в зависимости от того, в какой интервал попадает введенное значение, вычисляем значение функции по одному из заданных выражений. Текст программы имеет следующий вид.

Program ex; Var x, y: real;

Begin

WriteLn('Введите значение аргумента.');

ReadLn(x);

if abs(x)< =l then y: =abs(x) {первый отрезок}

else

if(abs(x)> l) and (abs(x)< =2) then y: =sqr(x) {второй отрезок}

else y: -4; {третий отрезок}

WriteLn('Ilpu x=', x: 8: 5, ' y=', y: 8: 5);

End.


Поделиться с друзьями:

mylektsii.su - Мои Лекции - 2015-2024 год. (0.009 сек.)Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав Пожаловаться на материал