Общий вид условного оператора:


а) полный вид:

if <условие > then <оп.1> else <оп.2>;

б) усечённый вид: if <условие> then <оп.1>;

где <условие> - некоторое выражение логического типа,

<оп.1> и <оп.2> - некоторые операторы языка Паскаль.

Действие условного оператора:

а) Полный вид: сначала вычисляется выражение <условие>. Если результат есть истина (true), то выполняется <оп.1>, если результат есть ложь (false), то выполняется <оп.2>.

Блок-схема:


б) Усечённый вид: вычисляется <условие>. Если результат есть истина, то выполняется <оп.1>. Если результат есть ложь, то никакого действия не происходит .

Блок схема:

 

 



Замечание 1. В качестве <оп. 1> и <оп. 2> по синтаксису языка Паскаль может присутствовать только один оператор. Если же при выполнении (или невыполнении) заданного условия надо выполнить сразу несколько операторов, то они должны быть объединены в один составной оператор (блок операторов) посредством операторных скобок begin и end:

begin

<последовательность операторов,

отделенных друг от друга точкой с запятой>

end;

 
 

Замечание 2: Операторы <оп.1> и <оп.2> сами могут включать в себя условные операторы. В этом случае любая встретившаяся часть else соответствует ближайшей к ней слева части then.

 
 

Пример. Дана область D (см. рисунок).

 

Даны два вещественных числа x и y, рассматриваемые как координаты точки на плоскости. Вычислить величины u и v по следующему праввилу:u=1, v=0, если точка (x,y) принадлежит D;u=0, v=1, если точка (x,y) не принадлежит D.

       
   
 

Решение. Основное в данной задаче – правильно записать условие принадлежности точки области D. Разобьём область D на две части D1 и D2, то есть D=D1ÈD2.

Тогда условие “(x,y) принадлежит D” можно записать как “(x,y) принадлежит D1” либо “(x,y) принадлежит D2”, где “(x,y) принадлежит D1” означает что:

1) (x,y) лежит внутри окружности с центром в начале коордиат радиусом 1;

2) (x,y) лежит левее оси Y;

3) (x,y) лежит выше оси X.

 
 

Это эквивалентно системе неравенств:

которая на языке Паскаль записывается так:

(x*x+y*y<=1) and (x<=0) and (y>=0).

Аналогично, условие “(x,y) принадлежит D2” означает, что:

1) (x,y) лежит ниже гипотенузы прямоугольного треугольника D2;

2) (x,y) лежит правее оси Y;

3) (x,y) лежит выше оси X,

 
 

что эквивалентно системе неравенств

которая на языке Паскаль записывается так:

(y<=1-x) and (x>=0) and (y>=0)

Окончательно, условие “(x,y) принадлежит D” записывается так:

((x*x+y*y<=1)and(x<=0)and(y>=0))or

((y<=1-x)and(x>=0)and(y>=0))

Программа:

program pr1;

var x,y:real;

u,v:integer;

Begin

writeln(¢введите x,y¢);

read(x,y);

if ((x*x+y*y<=1) and (x<=0) and (y>=0)) or

((y<=1-x) and (x>=0) and (y>=0)) then

Begin

u:=1;

v:=0

End else

Begin

u:=0;

v:=1

end;

writeln(¢u=¢,u,¢_v=¢,v)

End.

Циклы

Операторами цикла называются операторы, многократно повторяющие одни и те же действия.



Дата добавления: 2016-09-06; просмотров: 4325;


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

Воспользовавшись поиском можно найти нужную информацию на сайте.

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

Считаете данную информацию полезной, тогда расскажите друзьям в соц. сетях.
Poznayka.org - Познайка.Орг - 2016-2024 год. Материал предоставляется для ознакомительных и учебных целей.
Генерация страницы за: 0.012 сек.