Организация разветвляющихся вычислительных процессов
Цель работы: Получение практических навыков в организации разветвляющихся вычислительных процессов. Знакомство с задачами, для которых используются условные операторы языка Турбо Паскаль 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; Мы поможем в написании вашей работы! |
Мы поможем в написании ваших работ!