Объявим переменные: varx:byte; y:integer. Этим переменным можно присвоить, например, такие значения x := 65; y := -5.
Заметим, что переменная x не может принимать отрицательные значения, поскольку они не входят в диапазон допустимых значений типа byte.
Таблица 1.2
Вещественные типы
Имя типа
Диапазон
single
1.5 × 10-45 – 3.4 × 1038
real (основной тип)
2.9 × 10-39 – 1.7 × 1038
double
5.0 × 10-324 – 1.7 × 10308
extended
3.4 × 10-4951 – 1.1 × 104932
Вещественные числа можно записывать в формате с фиксированной точкой. Запись –5.2Е+2 является представлением числа -520.0, а 16.1Е-3 -
Пример структуры простейшей программы на языке PASCAL:
Список имен переменных указывается через запятую.
Например:
Var
X, y: integer;
Z, m:real.
0.0161. Символы Е+2 обозначают умножение на 10 в степени +2, а Е-3 - на
10-3, то есть NЕm = n×10m.
Символьныйтип (char) - это множество символов кодовой таблицы компьютера ASCII. Символьная константа - это символ, заключенный в одинарные кавычки (апострофы), например, ‘a’, ‘5’, ‘%’.
Логический тип (boolean) характеризуется двумя значениями: false(ложь) и true (истина).
Все стандартные типы (кроме вещественного) упорядочены, то есть для каждого данного определены последующее и предыдущее значения.
Нестандартные простые типы.Все рассмотренные выше типы данных - стандартные. Их не нужно описывать в разделе type.Пользователь может определить свои собственные типы данных в разделе описания типов typeтаким образом:
type <имя типа 1> = <описание типа 1>;
…
<имя типа n> = <описание типа n>;
К простым нестандартным типам принадлежат перечисляемый, диапазонный и строковый.
Перечисляемый тип пользователь создает путем указания (перечисления) всех значений, которые могут принимать переменные этого типа, в виде списка слов-идентификаторов, заключенного в скобки:
Значениями не могут быть данные числовых и символьного типов.
Пример. Опишем два перечисляемых типа (названия дней недели и цветов):
type week = (mon, tue, wed, the, fri, sat, sun);
color = (red, green, yellow, white);
и объявим две переменные – day и avto этих типов:
varday : week;
avto : color;
Этим переменным можно присвоить, например, такие значения:
day :=fri; avto := green; avto := red.
Нумерация элементов списка начинается с 0. Над данными перечисляемого типа определены функции ord, pred и succ (см. табл. 1.4). Например,
ord(avto) = 0, ord(day)
pred(day) = the, succ(day) = sat.
Данные этого типа нельзя вводить с клавиатуры или выводить на экран.
Диапазонный (ограниченный) тип – это сужение некоторого базового упорядоченного типа. Его описывают так:
type <имя типа> = <значение 1> .. <значение 2>
Пример. Создадим три типа (weekdays, workdays, months), которые описывают все дни и рабочие дни недели, а также номера месяцев года. Объявим переменные day1, day2, day3 и months этих типов:
Type weekdays = (mon, tue; wed, the, fri, sat, sun);
workdays = (mon..fri);
months = 1..12;
Var day 1,day 2 : weekdays;
day 3 : workdays;
months : months;
Строковый тип данных (string). Значениями переменной строкового типа может быть любая последовательность, состоящая не более чем из 255 символов. Данные строкового типа можно описать в разделе типов, задать в разделе констант или объявить в разделе переменных. Например:
type t = string[10];
const s = 'Bye!' ;
vartop : t; w : string;
В квадратных скобках указывают максимальную длину строки. Константы строкового типа используются в программах в операторах вывода write и writeln для обозначения наименований выводимых величин.
Типизированные константы. Кроме обычных констант существуют типизированные константы. Они дают возможность объявлять переменные и сразу присваивать им значения:
В отличие от обычных значения типизированных констант в программе можно менять. Примерами типизированных констант могут быть:
сonstc : char = 'a';
n : integer = 5;
p : real = 1.73;
k : boolean = true;
Операторы программы линейной структуры записываются друг за другом в соответствии с порядком, определяемым алгоритмом. Для записи программы такой структуры необходимы операторы присваивания, ввода исходных данных, вывода результатов вычислений и вызовов процедур.
Оператор присваивания. Оператор присваивания выглядит таким образом:
<имя переменной> := <выражение>;
Действие оператора.Вычисляется <выражение>, и его значение присваивается <переменной>. Выражение служит для описания формул, по которым выполняются вычисления, и может состоять из чисел, имён переменных, констант, функций, соединённых символами операций.
Переменная и выражения должны быть одного типа или согласованными: переменным вещественного типа можно присваивать значения выражений целого типа, а переменным строкового типа значение выражения символьного типа, но не наоборот.
Основные операции, стандартные функции и некоторые процедурыязыка Паскаль описаны в таблицах 1.3 и 1.4 соответственно.
Таблица 1.3
Основные операции
Приоритет
Операции
Действие операции
+ , -,
not
Присваивания знака
Логическое отрицание
* , /
div, mod
аnd
Умножение, деление
Целочисленные операции деления
Логическое произведение
+ , -
or, xor
Сложение, вычитание
Логические суммы
=,<>,<,>,<=,>=
in
Отношение (сравнение)
Принадлежность к множеству
Операции выполняются с учетом их приоритета (1 – самый высокий). Для изменения естественного порядка выполнения операций используют круглые скобки, например;