Запись инструкций программы
Одну инструкцию от другой отделяют точкой с запятой или, другими словами, в конце каждой инструкции ставят точку с запятой.
Хотя в одной строке программы можно записать несколько инструкций, как правило, каждую инструкцию программы записывают в отдельной строке.
Некоторые инструкции (if, case, repeat, while и др.) принято записывать в несколько строк, используя для выделения структуры инструкции отступы. Ниже приведен пример инструкции, которая записана в несколько строк и с использованием отступов:
if d >= 0 then begin x1: = (-b+Sqrt(d))/(2*a); x2: = (-b-Sqrt(d))/(2*a); ShowMessage('x1='+FloatToStr(xl) + 'x2='+FloatToStr(x2)); end else ShowMessage('Уравнение не имеет корней.');
Следует обратить внимание на то, что слова then и else записаны одно под другим (с одинаковым отступом) и с отступом относительно слова if. Слово end располагается под словом begin, а инструкции между begin и end размещаются одна под другой, но с отступом относительно begin.
Приведенную выше инструкцию можно записать и так:
if d >= 0 then begin x1: = (-b+Sqrt(d))/(2*a); x2: = (-b-Sqrt(d))/(2*a); ShowMessage('x1='+FloatToStr(x1)+'x2='+FloatToStr(x2)); end else ShowMessage('Уравнение не имеет корней.');
Однако первый вариант лучше, т. к. он отражает структуру алгоритма, реализуемого инструкцией. С первого взгляда видна группа инструкций, которая будет выполнена, если условие d >= 0 выполняется (в этом случае будут вычислены значения переменных x1 и х2), и инструкция, которая будет выполнена, если условие d >=0 не выполняется.
Длинные выражения тоже могут быть записаны в несколько строк. Разорвать выражение и перенести оставшуюся часть на следующую строку можно практически в любом месте. Нельзя разрывать имена переменных, числовые и строковые константы, а также составные операторы, например, оператор присваивания.
Ниже приведен пример записи выражения в несколько строк:
st: = 'Корни уравнения'+ #13 +'x1=' + FloatToStr(x1)+ #13 +'х2=' + FloatToStr(x2);
Еще один момент, на который следует обратить внимание. Компилятор игнорирует "лишние" пробелы и пустые строки. Так, он игнорирует все пробелы в начале строки. Кстати, это и позволяет записывать инструкции с отступами. Не требуются пробелы при записи арифметических и логических выражений (условий), списков параметров. Однако при их использовании программа легче воспринимается. Сравните два варианта записи инструкции присваивания:
x1: = (-b+Sqrt(d))/(2*a);
И:
x1: = (-b + Sqrt(d)) / (2 * а);
Очевидно, что второй вариант воспринимается лучше.
Для облегчения понимания логики работы программы в текст программы нужно включать поясняющий текст – комментарии. В общем случае комментарии заключают в фигурные скобки. Открывающая скобка помечает начало комментария, закрывающая – конец. Если комментарий однострочный или находится после инструкции, то перед комментарием ставят две наклонные черты.
Ниже приведен пример раздела объявления переменных, в котором использованы оба способа записи комментариев:
var { коэффициенты уравнения } a:real; // при второй степени неизвестного b:real; // при первой степени неизвестного с:real; // при нулевой степени неизвестного { корни уравнения } x1,x2:real;