Организация разветвляющихся вычислительных процессов



 

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

 

Основные сведения.

Одна из самых распространенных конструкций, которую использует любой язык программирования — это конструкция разветвления. Часто определенная часть программы может выполняться только при соблюдении некоторого условия. Для решения таких задач в языке Турбо Паскаль существуют условные операторы If и оператор выбора Case. Слово "If" в переводе с английского означает "если", "then" — "тогда", "else" — "иначе", "case" — "выбор", "of" — "из". Это зарезервированные слова языка ТР 7.0.

     1.1. Условный оператор IF краткой формы. В общем случае структура этого  оператора выглядит следующим образом:

     If b then <оператор>;

Здесь b — выражение логического типа (типа Boolean). Для его составления используют знаки отношения (>, <, >=, <=, =, < >), логические операции (not, and, or, xor); можно использовать и логические константы (True, False). Например:

1) If A<0 then writeln ('Число А отрицательное');

2) If (A=5) and (B=-7) then X:=3;

3) If (SQR(A)+SQR(B)>4then writeln(‘Да’);

Оператор, указанный после Then будет выполнен лишь в том случае, когда b=True (истинно, правда).

Когда необходимо выполнить более одного оператора после Then, то они заключаются в операторные скобки Begin—End (составной оператор).

Например:
If (X<1) and (X>=0) Then

Begin

S:=S+N;     

K:=K+1;

End;

                

1.2. Конструкция условного оператора If полной формы. В общем случае структура оператора If полной формы выглядит следующим образом:

If b then <оператор 1> е lse <опреатор 2>;

При такой конструкции всегда один из операторов будет выполнен (или первый, или второй). При значении b = True будет выполнен оператор 1, а при b = False будет выполнен  оператор 2.

В качестве операторов 1 и 2 могут быть любые выполняемые операторы в том числе и условные операторы IF. В последнем случае имеем структуру вложенных IF. Например:

If b1 Then If b2 Then <Оператор 1>

Else <Оператор 2>

 

Else <Оператор3>;

 

 

Правила языка:

1. Перед служебным словом Else точку с запятой ставить нельзя ;

2. В случае вложенных if, else связывется с ближайшим if, если последнее незанято с другим else.

В условном операторе допустимо использование составного оператора. Составной оператор - это объединение нескольких операторов в одну группу ключевыми словами Begin …End. Форма записи данного оператора имеет вид:

 

If  условие  Then Begin

оператор 1; ….

 

Оператор n

End

 

Else

Begin

оператор 1; ….

 

Оператор n

End;

 

В этой форме записи условного оператора служебные слова Begin и End называются операторными скобками. Составной оператор используется в тех случаях, когда по правилам языка программирования Pascal разрешается использовать только один оператор, а программисту для решения задачи необходимо выполнить группу операторов.

Поскольку ветвь Else является необязательной, условный оператор может быть записан в краткой форме:

 

If условие Then

Begin

оператор 1; ….

 

Оператор n

 

End;

или

 

If условие Then оператор;

Оператор выбора Case, который позволяет выбрать и выполнить один оператор, имеет следующий вид:

Case выражение  of

список меток 1 : оператор 1; список меток 2 : оператор 2;

 

……………..

список меток N : оператор N;

 

Else

Оператор

end;

 

Выражение – это выражение порядкового типа, определяющее дальнейший ход выполнения программы. Не может принимать значение действительного числа или строки. Список меток представляет собой список констант, разделенных запятыми, если диапазон чисел - то указывают первую и последнюю константы диапазона, разделенные двумя точками. Например, список 1, 2, 3, 4 можно записать как список 1 .. 4.

 

Выполняется оператор Case следующим образом: вычисляется значение выражения (за служебным словом Case), затем полученное значение последовательно сравнивается с константами из списка меток, стоящих перед двоеточием. Если значение выражения совпадает с константой из какого-либо списка меток, то выполняется соответствующий этому списку меток оператор. Если значение выражения не совпадает ни с одной константой из всех списков, то выполняется оператор, стоящий за словом else. Раздел else является необязательным.

 

Например, вывести на экран название времени года, в зависимости от введенного номера месяца

 

Case n of

3..5 : s:=’vesna’;

6..8 : s:=’leto’;

9..11 : s:= ‘osen’;

Else

s:=‟zima‟;

End ;

    


Дата добавления: 2018-11-24; просмотров: 360; Мы поможем в написании вашей работы!

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






Мы поможем в написании ваших работ!