Тип переменной и тип выражения должны быть совместимыми.
Обычно операторы в программе выполняются в том порядке, в каком они записаны. Оператор перехода прерывает естественный порядок выполнения программы и указывает, что дальнейшее выполнение должно продолжаться, начиная с оператора, помеченного меткой, указанной в операторе перехода.
Структура: goto <имя_метки>;
Использование данного оператора не рекомендуется, так как он нарушает принцип структурированности программы.
Под структурным программированием понимается метод программирования, обеспечивающий создание программы, структура которой ясна и неразрывно связана со структурой решаемой задачи.
Структурированная программа (или подпрограмма) - это программа, составленная из фиксированного множества базовых конструкций. Ими являются: следование, ветвление, цикл. Применяя только эти три конструкции, можно реализовать алгоритм решения любой задачи.
В языке Object Pascal существуют следующие разновидности базовых конструкций:
-следование;
-ветвление (двухалтернативный выбор);
-цикл с предусловием;
-цикл с постусловием;
-цикл с параметром;
-вариант (многоалтернативный выбор).
Конструкция следования реализуется последовательной записью операторов отделяемых друг от друга ;, а также составным оператором – последовательность операторов заключенных между begin и end.
Оператор условия реализует конструкцию ветвления. Структура:
If <выражение> then <оператор1> [else <оператор2>];
<выражение> - выражение, дающее результат логического типа.
Если результат истина, то выполняется <оператор1>.
Если результат ложь, то выполняется <оператор2>, если он есть.
Данный оператор реализует конструкцию цикла с предусловием.
Структура:
While <выражение> do <оператор>;
<выражение> - выражение, дающее результат логического типа, вычисляемое перед каждой итерацией цикла. Пока результат выражение истина выполняется <оператор>(итерация цикла).
Данный оператор реализует конструкцию цикла с постусловием.
Структура:
Repeat <констр.следование> Until <выражение>;
<выражение> - выражение, дающее результат логического типа, вычисляемое после каждой итерации цикла. Пока результат выражение ложь выполняются операторы из < констр.следование> (итерация цикла).