- •Оглавление
- •Введение
- •Основные этапы решения задач на эвм
- •Анализ постановки задачи и ее предметной области
- •Формальное решение задачи
- •Алгоритмизация
- •Основные средства представления алгоритмов
- •Визуальные алгоритмы
- •Процесс программирования
- •Языки программирования
- •Язык программирования Pascal
- •Среда программирования Delphi
- •Событийная модель ос Windows
- •Концепция объектно-ориентированного программирования
- •Delphi. Основные характеристики продукта
- •Высокопроизводительный компилятор в машинный код
- •Быстрая разработка приложения из прототипов
- •Структурное объектно-ориентированное программирование
- •Создание приложения в Delphi
- •Свойства в Delphi
- •События в Delphi
- •Основные понятия алгоритмического языка Состав языка
- •Основные символы
- •Элементарные конструкции
- •Выражения
- •Комментарии
- •Директивы компилятора
- •Тип данных
- •Приведение типов
- •Простые типы данных Целые типы данных
- •Битовая арифметика
- •Вещественные типы данных
- •Логический тип данных
- •Символьный тип данных
- •Структура программы
- •Константы
- •Переменные
- •Операторы Оператор присваивания
- •Оператор перехода
- •Структурные операторы
- •Операторы управления выполнением цикла
- •Оператор варианта
- •Подпрограммы
- •Перечисляемый тип данных
- •Интервальный тип данных
- •Структурированные типы данных Массивы
- •Строковой тип данных (строки)
- •Множества
- •Файлы. Файловый тип
- •Текстовые файлы
- •Типизированные файлы
- •Нетипизированные файлы
- •Последовательный и прямой доступ к компонентам файла
- •Процедурный тип
- •Вариантный тип
- •Адресный тип. Указатели
- •Динамические переменные
- •Динамические структуры данных
- •Динамические массивы
- •Очереди
- •Статические методы
- •Виртуальные методы
- •Динамические методы
- •Методы обработки сообщений
- •Конструкторы и деструкторы
- •Замещенные методы
- •Абстрактные методы
- •Свойства
- •Обработчики событий
- •Список рекомендуемой литературы
Перечисляемый тип данных
Перечисляемый тип представляет собой ограниченную упорядоченную последовательность скалярных констант, составляющих данный тип. Значение каждой константы задается ее именем. Имена отдельных констант отделяются друг от друга запятыми, а вся совокупность констант, составляющих данный перечисляемый тип, заключается в круглые скобки.
Программист объединяет в одну группу, в соответствии с каким – либо признаком, всю совокупность значений, составляющих перечисляемый тип.
Например, перечисляемый тип Traffic_Light (СВЕТОФОР) объединяет скалярные значения RED, YELLOW, GREEN (КРАСНЫЙ, ЖЕЛТЫЙ, ЗЕЛЕНЫЙ). Перечисляемый тип описывается в разделе объявления типов:
type
<имя_типа>=(<имя_константы>[=<выражение>][,…]);
<имя_типа> - имя нового перечисляемого типа;
<имя_константы> - имя константы принадлежащей данному типу;
<выражение> - выражение, дающее результат целого типа, порядковый номер константы.
Упорядоченная последовательность значений, составляющих перечисляемый тип, автоматически нумеруется, начиная с нуля и далее через единицу. Можно изменить номер константы при помощи <выражения>. Если задано выражение, то следующая константа будет иметь номер на единицу больше, если ее номер не задан выражением.
Например:
type
Traffic_Light=(RED, YELLOW=4, GREEN);
Каждое имя константы может принадлежать только одному из перечисляемых типов, заданных в программе.
Описание переменных перечисляемых типов, которые объявлены в разделе описания типов, производится с помощью имен типов.
Например:
type Traffic_Light= (RED, YELLOW=4, GREEN);
var Section: Traffic_Light;
Это означает, что переменная Section может принимать значения RED, YELLOW или GREEN. Также она может принимать ее три значения без имени соответствующие порядковым номерам 1, 2 и 3.
Переменные перечисляемого типа могут быть объявлены непосредственно в разделе описания переменных, например:
var Section: (RED, YELLOW=4, GREEN);
При этом имена типов отсутствуют, а переменные определяются совокупностью значений, составляющих данный перечисляемый тип.
К переменным перечисляемого типа может быть применим оператор присваивания:
Section := YELLOW;
Перечисляемым переменным и константам могут быть применены операции отношения, стандартные функции Pred, Succ, Ord и процедуры Inc, Dec.
Интервальный тип данных
Отрезок любого порядкового типа(кроме интервального) может быть определен как интервальный тип. Отрезок задается диапазоном от минимального до максимального значения. Порядковый тип, на котором строится отрезок, называется базовым типом.
Минимальное и максимальное значения называются нижней и верхней границами отрезка, определяющего интервальный тип. Нижняя граница должна быть меньше верхней.
Интервальный тип описывается в разделе объявления типов:
type
<имя_типа>=<значение1>..< значение2>;
<имя_типа> - имя нового интервального типа;
<значение1> - нижняя граница интервального типа;
<значение2> - верхняя граница интервального типа;
Над переменными, относящимися к интервальному типу, могут выполняться все операции и применяться все стандартные функции, которые допустимы для соответствующего базового типа.
При использовании в программах интервальных типов данных может осуществляться контроль над тем, чтобы значения переменных не выходили за границы, введенные для этих переменных в описании интервального типа.