Билет 1. Вопрос 1. Константы, переменные и выражения в языке PASCAL.
Выражение - это синтаксическая единица языка, определяющая способ вычисления некоторого значения. Выражения в языке PASCAL формируются в соответствии с рядом правил из констант (в том числе и конструкторов множеств), переменных (в том числе и компонент массивов, полей записей и полей объектов), функций (стандартных и написанных самостоятельно), знаков операций и круглых скобок. Пример: 5.2*k-x/y-sqrt(k)
Переменные.
Переменными называются параметры программы, значения которых могут изменяться в процессе её выполнения. Все используемые в программе переменные должны быть определены с указанием их типов. Переменные определяются: - в разделе объявления переменных программы; - в разделе объявления переменных подпрограммы; - в разделе объявления переменных модуля; - в заголовке подпрограммы. Раздел объявления переменных начинается зарезервированным словом var, за которым следуют объявления конкретных переменных, состоящие из имени переменной (имён переменных, перечисленных через запятую, если они одного типа), двоеточия и типа переменной (переменных). Каждое объявление завершается точкой с запятой: var <список переменных 1>: <тип 1>; <список переменных 2>: <тип 2>; <список переменных N>: <тип N>; В разделе объявления переменных наряду с предопределёнными типами можно использовать типы, объявленные перед этим в разделе объявления типов, а также новые, вводимые только для конкретных переменных. В заголовке подпрограммы при определении переменных можно использовать лишь стандартные или ранее определённые типы. ПРИМЕР . type Operat = (Plus, Minus, Mult, Divide); var x, y, z: real; {предопределённый тип} i, j, k: integer; {предопределённый тип} Operator: operat; {ранее определённый тип} Digit: 0..9; {объявление нового типа}
Константы.
Константами называются параметры программы, значения которых не меняются в процессе её выполнения. В языке ТП возможно двоякое использование констант: - непосредственное использование значения констант; - использование идентификатора константы. Задание констант идентификаторами осуществляется в разделе объявления констант, начинающемся зарезервированным словом const. В ТП имеется две разновидности констант, заданных идентификаторами: - обычные константы, тип которых определяется их значением; - типизированные константы, для которых в явном виде указывается их тип. Обычные константы могут быть целого, вещественного, символьного, логического типа и типа string типизированные константы - любого типа, кроме типа файл. Для обычных констант задаются их имена и значения, разделённые знаком равенства: const <имя константы 1> = <значение 1>; <имя константы 2> = <значение 2>; ................................................................ <имя константы n> = <значение n>; Значения констант могут задаваться как конкретными величинами соответствующего типа, так и константными выражениями.
Целые константы.
В изображении целых констант присутствует лишь знак и цифры. Предполагается десятичная система счисления, но можно использовать и шестнадцатеричную. В этом случае перед константой следует поставить знак $. Диапазон целых десятичных чисел - от -2147483648 до 2147483647. В ТП заданы два предопределённых целых числа: MaxInt = 32767 MaxLongInt = 2147483647
Вещественные константы.
Вещественные константы в своём изображении содержат десятичную точку или/и показатель степени (символ Е или е), например: X = -0.5; Y = 1.0; Z = -1E-5; W = 7.5e+15;
Строковые и символьные константы.
Строка символов - это последовательность любого, в том числе и равного нулю, количества символов из набора ASCII, расположенной на одной строке и заключённых в апострофы. Ограничением здесь может быть максимальный размер строки, воспринимаемый компилятором, - не более 126 символов. Строка, состоящая из одного символа, называется символьной константой. Если между апострофами нет ни одного символа, то такая строка называется нулевой строкой. При необходимости поместить в строку символ <апостроф>, его следует записать дважды, например 'Язык ''Turbo Pascal''' Для включения в строку символов, не имеющих физического изображения, используется их ASCII-код с символом # перед ним. Для изображения управляющих символов (коды от 0 до 31) можно использовать символ ^ и соответствующую букву, код которой равен коду управляющего символа плюс 64.
Примеры строковых констант: Const Symbols = 'Turbo'; Apostroph = ''''; Twolines = 'Line1'#13#10'Line2'; Return = ^M^J;
Константные выражения.
Константные выражения - это такие выражения, которые могут быть вычислены на стадии компиляции без запуска программы. Они являются частным случаем выражений и могут состоять из констант, знаков операций, круглых скобок и некоторых стандартных функций. Примеры : $A00 'A' Pi/4 'TURBO' + '-' + 'PASCAL' В константных выражениях можно использовать следующие функции : Abs, Chr, Hi, High, Length, Lo, Low, Odd, Ord, Pi, Pred, Ptr, Round, SizeOf, Succ, Swap, Trunc.
Типизированные константы.
Типизированные константы фактически представляют собой инициализированные переменные и могут использоваться наравне с обычными переменными, в том числе и в левой части операции присваивания. Для каждой такой константы задаётся её имя, тип и начальное значение. Тип от имени отделяется двоеточием, начальное значение от типа - знаком равенства. <имя константы>: <тип константы> = <значение константы >; const maximum: integer = 9999; bell: char = #7; Следует иметь ввиду, что типизированные константы инициализируются только раз - в начале работы программы. Независимо от места объявления типизированных констант в программе все они размещаются в сегменте данных программы. |