русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Множества. Массивы

Множество – это особый тип данный, который строится на основе некоторого базового типа. Имея переменную типа "множество", можно получить ответ на вопрос: "присутствует ли во множестве искомое значение". Например, представьте себе последовательность чисел 1,12,43,55 (кстати, одинаковых элементов в множестве быть не может). Можно узнать, входит ли число 43 в множество или нет, можно добавить новое число в множество, удалить число из множества, узнать, какие числа входят в два множества сразу. Но само число 43 в множестве не содержится. Множество – это не массив! Нельзя обратиться к конкретному элементу множества, можно только узнать, присутствует ли данное значение в множестве или нет.

В Delphi множество описывается примерно так:

TYPE TS=SET OF CHAR;

Здесь CHAR – базовый тип множества. Что это значит? Дело в том, что в памяти компьютера каждый элемент множества кодируется одним битом. Если бит равен единице, то элемент, равный порядковому номеру этого бита, присутствует в множестве, если же нулю – отсутствует. Работать с длинными последовательностями нулей и единиц долго. Поэтому в Паскале введено ограничение – число элементов в множестве не должно превышать 256. Соответственно и базовым типом можно выбирать только такой, который принимает не более 256 различных значений. К ним относятся BYTE и CHAR, перечислимые типы и типы-диапазоны с числом элементов, не превышающим 256. При попытке создать множество на базе, к примеру, типа INTEGER (2 байта, 65535 различных значений) возникнет сообщение об ошибке "Set base type out of range":

TYPE TS=SET OF INTEGER;

Set base type out of range

Переменную типа "множество" нельзя непосредственно вывести на экран или ввести с клавиатуры. Как же тогда создать множество?

Рассмотрим следующий фрагмент программы:

TYPE ts=SET OF CHAR;
VAR s:ts;

s:=[’A’,’B’,’C’,’D’..’H’];

Здесь создается множество с базовым типом CHAR и в него заносятся элементы 'A', 'B','C',D','E','F','G','H'. Как такое множество хранится в памяти, видно из Рис. 2.1

Рис. 5.1. Представление множества в памяти
(в нижнем ряду представлены коды символов).

Просмотров: 587


Вернуться в оглавление



Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.