6. Оператори
39
Типът и видът (променлива или израз) на всеки параметър от списъка трябва да
бъде съобразен с типа и вида на съответния формален параметър (за подробности виж
главата за описание на процедури и функции).
6.1.4. Оператор за преход
Общият вид на оператора за преход е
GotoStatement =
'goto' Label.
Той променя нормалния ход на програмата, като безусловно предава
управлението към отбелязания с етикета Label оператор. Използването на оператора
за преход нарушава структурата на програмата и от гледна точка на структурното
програмиране е желателно да не бъде използван. Всъщност използването му е
оправдано само в изключително редки случаи.
6.2. Сложни (структурирани) оператори
Сложните (структурирани) оператори са оператори, включващи в себе си други
оператори на Pascal (прости и сложни).
StructStatement =
CompoundStatement |
IfStatement       |
CaseStatement     |
RepetativeStat    |
WithStatement     .
6.2.1. Съставен оператор
Съставният оператор (CompoundStatement) се състои от последователност от
оператори, изпълнявани в реда, в който са написани (ако този ред не бъде нарушен от
оператор за преход). Тези оператори са оградени от така наречените операторни скоби
BEGIN и END. Общият вид на този оператор е:
CompoundStatement = 'begin' Statement { ';' Statement } 'end'.
Съставният оператор обикновено се използва на място, където синтаксиса на
Pascal разрешава само един оператор, а е необходимо написването на повече.
Например:
if OK then begin
ReadData; Calculate; WriteData;
end { if };
6.2.2. Условен оператор (if)
Условният оператор изпълнява даден оператор в зависимост от стойността на
зададен логически израз, в противен случай изпълнява друг оператор (в частност - нищо
друго). Общият вид на оператора е:
IfStatement =
'if' Expression
  'then' Statement [
  'else' Statement ].
Expression е израз от тип Boolean. Ако този израз има стойност TRUE, изпълнява
се операторът, стоящ след ключовата дума THEN. След завършването на изпълнението
му се продължава с изпълнението на следващия след оператора IF оператор. Ако
<<  <  GO  >  >>

Вернуться к началу сайта