Переменные символьного типа могут принимать значения одного из символов с кодами от #0 до #255, т. е. допускаются буквы русского алфавита и символы псевдографики. Символы с кодами от #0 до #31 (управляющие) в тексте воспринимаются как пробел, а в операторах вывода как символ или команда.
Примеры описания: VAR с, ch, e: char;
Примеры присвоения значения:
c:= '!'; c:= #33;{ символ "!" задается значением кода }
ch:= #13;{ код клавиши Enter } e:= #27;{ код клавиши Esc }
Примеры вывода: Write(с); { выводится символ " ! " }
Write(ch);{ команда перевода курсора на новую строчку }
Write(е);{ выводится специальный символ, соответствующий коду #27 }
Строковый тип
Переменная строкового типа задается набором символов, заключенных в кавычки.
Примеры описания:VAR s: string[25]; s1: string;
{ длина переменной s может изменяться от 1 до 25 символов }
{ длина переменной s1 не указывается, наибольшее число символов равно 255 }
Массив - упорядоченные данные одного типа, состоящие из переменных (элементов массива). Элементы массива имеют свой порядковый номер (индекс) и значение. Значение присваивается отдельно каждому элементу массива, либо сразу всем элементам массива (копирование одного массива в другой в случае массивов одинакового типа). Массив может быть многомерным (без ограничения), но занимать не более 65520 байт. Примеры описания:
VAR M1: array[1..200] of integer; A1: array[100..200] of real;
ch1: array['A'..'Z'] of char; ch2: array[0..255] of char;
{ М1, A1 - одномерные массивы целых и вещественных чисел }
Файл - именованная область внешней памятиЭВМ, содержащая различные данные. Длина файла ограничена доступной дисковой памятью. Файлы могут быть текстовые, типизированные и нетипизированные. Рассмотрим описание текстовых файлов, хранящих информацию в виде строк переменной длины с последовательным доступом к данным.
Оператор Assign присваивает файловой переменной имя файла на диске.
Файл file1. in содержится в текущем каталоге. Для файла file2. out указывается дорожка DOS.
Записи
Записи - вводимый программистом тип, определяемый как структура данных разного типа, содержащая названия полей с указанием их типов, расположенных между служебными словами Record и End.
Примеры описания: Type Sity = Record
Name_G: String[20]; { название города }
Numb_G: LongInt;{ число жителей }
Stol_G: Boolean;{ Столица (Да, Нет) }
Shir, Dol: Real{ Координаты: широта, долгота }
End;
Var St1, St2, St3: Sity;{ Переменные типа запись }