Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
yazyk_2010.doc
Скачиваний:
7
Добавлен:
18.04.2015
Размер:
141.31 Кб
Скачать

Основные понятия

Алфавит

Алфавит языка Object Pascal включает в себя следующие символы:

  • 53 буквы — прописные (а .. z) и строчные (а .. z) буквы латинского алфавита и знак подчеркивания (_);

  • 10 цифр — 0 .. 9;

  • специальные символы— + -*/., :;= ><' ( ) {}[]#$ ^ @

  • пробел.

Комбинации специальных символов образуют следующие составные символы:

  • := — присваивание;

  • <>— не равно;

  • .. — диапазон значений;

  • <= — меньше или равно;

  • >= — больше или равно;

  • (* и *) — альтернатива фигурным скобкам { и };

  • ( . и . ) — альтернатива квадратным скобкам [ и ] .

Словарь языка

Неделимые последовательности знаков алфавита образуют слова.

Слова подразделяются на: ключевые слова; стандартные идентификаторы; идентификаторы пользователя.

Ключевые (зарезервированные) слова являются составной частью языка, имеют фиксированное написание и однозначно определенный смысл, изменить который программист не может. Например, ключевыми являются слова:Label, unit, Goto, Begin, interface. В Редакторе кода ключевые слова выделяются полужирным шрифтом.

Стандартные идентификаторы служат для обозначения следующих заранее определенных разработчиками конструкций языка: типов данных; констант; процедур и функций. В отличие от ключевых слов любой из стандартных идентификаторов можно переопределить.

Идентификаторы пользователя применяются для обозначения имен меток, констант, переменных, процедур, функций и типов данных. Эти имена задаются программистом и должны отвечать следующим правилам:

  • идентификатор составляется из букв и цифр;

  • идентификатор всегда начинается только с буквы, исключением являются метки, которыми могут быть целые числа без знака в диапазо­не 0 .. 9999;

  • в идентификаторе можно использовать как строчные, так и прописные буквы, компилятор интерпретирует их одинаково.

  • в идентификаторах специальных символов не допускается

Типы данных

Программа может оперировать с данными различных типов: целыми и дробными числами, символами, строками символов, логическими величинами и др.

Целый тип

Object Pascal поддерживает семь целых типов данных: shortint, smallint, Longint, int64, Byte, word и Longword, описание которых приведено в табл.

Тип

Диапазон

Формат

Shortint

-128.. 127

8-бит

Smallint

-32768..32767

16-бит

Integer, Longint

-21 47483648..21 47483647

32-бит

Int64

-263 ..263— 1

64-бит

Byte

0..255

8-бит, беззнаковый

Word

0..65535

8-бит, беззнаковый

Longword

0.. 4294967295

8-бит, беззнаковый

Мы будем использовать наиболее универсальный целый тип — integer, который эквивалентен Longint.

Вещественный тип

Object Pascal поддерживает шесть вещественных типов: Reai48, single,

Double, Extended, Comp, Currency. ТИПЫ различаются между Собой Диапазоном

допустимых значений, количеством значащих цифр и количеством байт, необходимых для хранения данных в памяти компьютера.

Тип

Диапазон

Значащих цифр

Байт

Real

2.9 х10-39.. 1.7x1038

11-12

6

Single

1.5 x 1 0-45. . 3.4x1 038

7-8

4

Double

5.0x10-324.. 1.7 x10308

15-16

8

Extended

3.6 x10-4951.. 1.1 x104932

19-20

10

Comp

-263+ 263-1

19-20

8

Object Pascal поддерживает и наиболее универсальный вещественный тип —

Real. Мы будем использовать тип данных Double.

Символьный тип

Object Pascal поддерживает два символьных типа: AnsiChar и wideChar AnsiChar— это символы в кодировке ANSI

В Диапазоне ОТ О ДО 255.; тип WideChar — это символы В Кодировке Unicode,

им соответствуют числа от 0 до 65 535.

Мы будем использовать универсальный символьный тип —Char, который эквивалентен AnsiChar.

Строковый тип

Object Pascal поддерживает три строковых типа: ShortString, LongString.

Тип ShortString представляет собой статически размещаемые в памяти компьютера строки длиной от 0 до 255 символов.

Тип LongString представляет собой динамически размещаемые в памяти строки, длина которых ограничена только объемом свободной памяти.

Мы будем использовать тип данных String. Тип string эквивалентен типу shortstring.

Логический тип

Логическая величина может принимать одно из двух значений True (истина) или False (ложь). В Object Pascal логические величины относят к типу Boolean.

Массивы

Массивом называется упорядоченная индексированная совокупность однотипных элементов, имеющих общее имя. Элементами массива могут быть данные различных типов. Каждый элемент массива однозначно определяется именем массива и индексом (номером этого элемента в массиве) или индексами, если массив многомерный.

Описания типа статического массива выглядит следующим образом:

Array [Тип индексов] of <Тип элементов>;

Например,

Var

arrl, arr2: Array[l .. 10, 1 .. 100] of double;

arr3: Array[20 .. 100] of char;

arr4: Array['a' .. 'z'] of integer;

Переменные arrl и arr2 являются двумерными массивами по 1000 элементов — 10 строк и 100 столбцов. Каждый элемент этих массивов представляет собой число типа double. Переменные агг3 и агг4 являются одномерными массивами длиной в 81 символ и 26 целых чисел, соответственно.

Динамический массив представляет собой массив, для которого при объявлении указывается только тип его элементов, а размер массива определяется при выполнении программы.

Array of <Тип элементов>;

Задание размера динамического массива во время выполнения программы производится процедурой SetLength (var S; NewLength: Integer), которая для динамического массива S устанавливает новый размер, равный NewLength. .

  • Выполнять операции с динамическим массивом и его элементами можно только после задания размеров этого массива.

  • Нумерация элементов динамического массива начинается с нуля.

Приведем пример использования динамического массива.

var n: integer;

A,b: array of double;

…………………………………………………………

………………………………………………………

……………………………………………………

SetLength(A, 100);

SetLength(b, n+1);

Так как нумерация элементов массива начинается с нуля, то номер последнего из них равен не 100, а 99. Поэтому обычно используют форму записи примененную для массива b.

Для описания типа многомерного динамического массива, например двумерного, используется конструкция

Array of Array of <Тип элементов>;

Например:

var n: integer;

Aс: array of array of double;

…………………………………………………………

………………………………………………………

……………………………………………………

SetLength(Ac, n+1,n+1);

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]