
- •3. Введение в язык программирования паскаль
- •3.1. Краткая характеристика языка
- •Алфавит, лексемы, разделители
- •3.1.2. Структура программы
- •3.2. Средства кодирования вычислительных операций
- •3.2.1. Операция ввода
- •3.2.2. Операция присваивания
- •3.2.3. Операция вывода
- •3.3. Средства кодирования управляющих конструкций
- •3.3.1. Кодирование структуры «Ветвление»
- •3.3.2. Кодирование структуры «Цикл»
- •3.4. Кодирование алоритма в целом
- •Заключение
- •Вопросы для самоконтроля
3.3. Средства кодирования управляющих конструкций
Управляющая конструкция «Следование», как и при записи алгоритма, не требует ничего. Она обозначается за счет одинакового отступа каждого нового оператора от левого края листа. Ниже будут приведены сведения о кодировании двух других управляющих конструкций.
3.3.1. Кодирование структуры «Ветвление»
Для кодирования этой структуры в первую очередь может быть использован оператор if-then-else.
Синтаксис оператора if допускает два варианта записи:
-
if <условие> then <составной оператор>;
if <условие> then <составной оператор>
else <составной оператор>;
Здесь составной оператор- это один (любой) оператор Паскаля или любое количество операторов Паскаля, ограниченное ключевыми словамиbeginиend.
Ниже приведены различные варианты кодирования управляющей структуры «Ветвление»:
a) Одноальтернативная конструкция:
если<условие>то |
if <условие> then |
операция |
<оператор>; |
все |
{end if} |
или |
|
если<условие>то |
if <условие> then begin |
операция операция |
<оператор> . . . <оператор> |
все |
end; {if} |
б) Двухальтернативная конструкция:
если<условие>то |
if <условие> then |
операция |
<оператор> |
иначе |
else |
операция |
<оператор>; |
все |
{end if} |
или |
|
если <условие> то |
if <условие> then |
операции |
begin <оператор> . . . <оператор> end |
иначе |
else |
операции |
begin <оператор> . . . <оператор> end; |
все |
{if} |
в) Многоальтернативная конструкция.
Ее можно рассматривать как базовую, из которой можно построить и приведенные выше, удалив из данной ненужные части.
(Приводится пример только для случая, когда каждая альтернатива заключается в выполнении одного оператора)
если<условие 1>то |
if <условие 1> then |
<операция 1> |
<оператор 1> |
инес<условие 2>то |
else if < условие 2> then |
<операция 2> |
< оператор 2> |
инес<условие 3>то |
else if < условие 3> then |
<операция 3> |
< оператор 3> |
. . . . . |
. . . |
иначе |
else |
<операция k> |
< оператор k>; |
все |
<end if> |
В языке Паскаль имеется еще один оператор, который может быть использован для кодирования многоальтернативного выбора – это оператор Case <селектор> of. Его применяют в том случае, если каждый из вариантов сопоставляется одному из значений селектора. В качестве селектора может быть использовано выражение или переменная перечислимого типа. В качестве значения селектора чаще всего используются целые числа и символы алфавита. Подробности и примеры его использования предлагается взять в литературе.