Оператори процедури

Оператор процедури визначає активізацію процедури, позначену за допомогою ідентифікатора процедури. Якщо відповідний опис процедури містить список формальних параметрів, то оператор процедури повинний містити в собі відповідний йому список фактичних параметрів (параметри, список яких приводиться у визначенні, є формальними параметрами, а в операторі виклику у визначенні, є фактичними параметрами). При виклику відбувається передача фактичних параметрів формальним параметрам.

Приведемо деякі приклади операторів процедур:

PrintHeading;

Transpose(A,N,M);

Fin(Name,Address);

 

Оператори переходу

Оператор переходу goto здійснює передачу керування оператору, якому передає мітка, зазначена в даному операторі переходу. При використанні оператора переходу треба дотримуватись наступних правил:

1. Мітка, що вказується в операторі переходу, повинна знаходитися в тім же блоці модуля, що і сам оператор переходу. Іншими словами, не допускаються переходи з процедури чи функції усередину програми.

2. Перехід ззовні усередину структурного оператора (тобто перехід на більш глибокий рівень вкладеності) може викликати непередбачені ефекти, хоча компілятор не видає повідомлення про помилку. Наприклад, ви не повинні переходити в тіло циклу for.

Примітка: практика програмування вимагає мінімального використання переходів.

 

5.4.2. Структурні оператори

 

Структурні оператори будуються з інших операторів, порядок виконання яких повинний бути послідовним (складні оператори і оператори над записами), обумовленим передачею керування (умовні оператори) чи повторюваним (оператори циклу).

 

 

Складні оператори

 

Складні оператори задають порядок виконання операторів, що є їх елементами. Вони повинні виконуватися в тим порядку, у якому вони записані. Складні оператори обробляються, як один оператор, що має вирішальне значення там, де синтаксис Паскаля допускає використання тільки одного оператора. Оператори зазначаються в обмежниках begin I end, і відокремлюються друг від друга крапкою з комою.

Наведемо приклад складного оператора:

begin

Z := X;

X := Y;

Y: = Z;

end;

 

Умовні оператори

Умовні оператори дозволяють для виконання один з кількох операторів (або не вибрати жодного).

Оператор умови(if)

Синтаксис оператора if можна представити в такий спосіб:

 

if умова then оператор [else оператор];

 

В умові (виразі іі визначаючим) повинен бути результат, що має стандартний булевский тип. Якщо результатом перевірки умови є вірне значення (True), то виконується оператор, що слідує за ключовим словом then.

Якщо результатом перевірки є значення False і присутнє ключове слово else, то виконаються оператор, що слідує за ключовим словом else. Якщо ключове слово else відсутнє, то ніякий оператор не виконується, буде працювати наступний за умовним оператором рядок програми.

У загальному випадку ключове слово else зв’язується з найближчим ключовим словом if, що ще не зв’язано з ключовим словом elsle.

Наведемо два приклади оператора if:

if P1 > 0 then writeln (‘P1 більше нуля’);

if X < 1.5 then

Z := X+Y

else

Z := 1.5;

 

Оператор варіанта (case)

Оператор варіанта (case ) складається з виразу (перемикача) і списку операторів, кожному з яких передає одна чи більше констант (вони називаються константами вибору), так само може бути ключове слово else. Перемикач (селектор) повинний мати порядковий тип (розміром у байт чи слово). Таким чином, строковий тип довгий цілий тип є неприпустимими типами перемикача. Усі константи вибору повинні бути унікальними і мати порядковий тип, сумісний з типом перемикача.

Оператор варіанта case приводить до виконання оператора, якому передає константа вибору, рівна зазначенню перемикача чи діапазону вибору, у якому знаходиться значення перемикача. Якщо такої константи вибору чи такого діапазону не існує і є галузь else, то виконується оператор, що слідує за ключовим словом else. Якщо ж галузь else відсутня то ніякий оператор не виконується.

Наведемо деякі приклади оператора варіанта:

Case Operator of

plus: X := X+Y;

minus: X := X-Y;

times: X := X*Y;

end;

case l of

0, 2, 4, 6, 8: Writeln(‘Парна цифра’)

1, 3, 5, 7, 9: Writeln(‘Непарна цифра’)

10..100: Writeln(‘Між 10 і 100’)

Else Writeln(‘>100’)

end;

 

Оператор циклу

Оператор циклу задає повторне виконання визначених операторів.

 

Оператори циклу:

· оператор repeat

· оператор while

· оператор for

 

Якщо число повторень заздалегідь відомо, то доцільно використовувати оператор for. У іншому випадку варто використовувати оператори while чи repeat.

Для керування повторенням операторів можна використовувати стандартні процедури Break i Continue. Break завершує оператор циклу, а Continue продовжує з наступної ітерації цього оператору циклу.

 








Дата добавления: 2016-01-18; просмотров: 769;


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

При помощи поиска вы сможете найти нужную вам информацию.

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

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.007 сек.