Студопедия
Случайная страница | ТОМ-1 | ТОМ-2 | ТОМ-3
АрхитектураБиологияГеографияДругоеИностранные языки
ИнформатикаИсторияКультураЛитератураМатематика
МедицинаМеханикаОбразованиеОхрана трудаПедагогика
ПолитикаПравоПрограммированиеПсихологияРелигия
СоциологияСпортСтроительствоФизикаФилософия
ФинансыХимияЭкологияЭкономикаЭлектроника

Понятие множества

Листинг 9.1. Вывод строки в перевернутом виде и по отдельным словам | Операции над строками | Процедуры преобразования типов | И замена фрагментов текста | Случайных неповторяющихся чисел | Определение и правила записи |


Читайте также:
  1. Античное понятие о мелосе.
  2. Безубыточность: понятие, порядок определения, факторы изменения.
  3. Брак и семья. Семья и ее функции, понятие об ответственности родителей.
  4. В христианском учении понятие «счастье» делится на мирское и духовное
  5. В. Понятие типа кадра
  6. В.1. Понятие производственной мощности предприятия
  7. Валидность теста – понятие, указывающее на то, чтó измеряет тест и насколько хорошо он это делает.

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

Тип элементов множества называется базовым типом множества. Область значений типа множества — набор всевозможных подмножеств, составлен­ных из элементов базового типа.

В языке Turbo Pascal имеются ограничения на базовый тип. Это может быть только порядковый тип, количество значений которого не превышает 256. Из простых типов к таким относятся char, byte, boolean. Разрешается ис­пользовать перечисляемый тип и диапазон (если он включает не больше 256 элементов).

Это существенные ограничения, которые не позволяют использовать мно­жества в серьезных задачах обработки данных. Все же для ряда задач при­менение множеств может обеспечить серьезные преимущества по сравне­нию с использованием других структур данных — массивов или строк.

При задании значений элементов множества применяются квадратные скобки.

Например: [1,2,3,4], ['а','Ь','с1Ь ['а'.. 'г'}


Если множество не имеет элементов, оно называется пустым и обознача­ется []. Пустое множество включено в любое другое.

Для объявления множественного типа используется словосочетание set of (множество из...). Формат объявления множественных типов следующий:

Type

ИмяТипа = set of ТипЭлементовМножества; var

ИмяПеременной,...: ИмяТипа;

Можно описать переменные множественного типа и без предварительного объявления типа:

var ИмяПеременной,...: set of Тип;

Можно объявить константы множественного типа:

const ИмяКонстанты=[ЗначениеМножества];

а также типизированные константы:

const ИмяКонстанты:ТипМножест'ва= [ЗначениеМножества];

Например:

const number - [1,4,7,9]; type simply = set of 'a'.-'h1;

var pr: simply;

letter: set of char; {без предварительного описания в разделе типов}

В данном примере в множество рг могут входить значения символов латин­ского алфавита от 'а' до 'h1; в множество letter — значения любых сим­волов. Попытка присвоить другие значения вызовет ошибку выполнения.

Замечание

В памяти множества представлены особым образом. Каждому значению базо­вого типа множества в памяти отводится 1 бит (не байт!). Следовательно, мак­симальный размер ячейки памяти, отводимой под множество, составляет 32 байта. Поскольку все значения порядкового типа расположены строго по по­рядку, 1 в соответствующем бите означает наличие данного значения в множественной переменной, а 0 — отсутствие.

Исходя из особенностей внутреннего представления множеств, можно сде­лать два основных вывода:

П в множестве не может быть одинаковых элементов, что согласуется и с нашими математическими знаниями;

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


Дата добавления: 2015-11-14; просмотров: 46 | Нарушение авторских прав


<== предыдущая страница | следующая страница ==>
Преобразование строчных букв в заглавные| Операции над множествами

mybiblioteka.su - 2015-2024 год. (0.005 сек.)