Студопедия

Главная страница Случайная страница

Разделы сайта

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






Множества






Множество‑ это набор однотипных, логически связанных объ­ек­тов: < имя типа> = set of < базовый тип элемента множества>

Переменную типа «множество» можно определить сразу в разделе пере­мен­­ных без предварительного описания типа в виде:

< имя переменной ‑ множества>: set of < базовый тип элемента>

Правила:

1. В качестве базового типа элемента множества может исполь­зо­вать­ся любой порядковый тип, кроме Word, Integer, LongInt. Обычно он задается диапазоном или перечислением.

2. Количество элементов множества ограничено 256. Номер значения базы от 0 до 255.

3. В выражении значение элементов задается конструктором мно­жества ([ ] ‑ пустое множество).

Пример:

type prostoi, nomer = set of 3..99;

var pr: prostoi; n: nomer; p: set of 'a'..'z'; begin pr: =[3, 5, 7, 11, 13];...

Пример множества заданного перечислением:

type dni=(vosk, pon, vtor, sreda, chetv, pjtn, sub);

var dnirab, weekend: set of dni;...

begin weekend: =[sub, vosk]; dnirab: =[pon..pjtn]

Пример объявления глобальной переменной типа множества:

Implementation //исполнимый раздел модуля

Var NumChar: set of Char=['0'..'9', '+', '‑ ', ’.’]; //допустимые символы числа

Константы типа «множество» задаются в виде ([...]).

Пример. Type Days= set of 1..31; //объявление типа множества

Const Workdays: Days=[1..5, 8..12, 15..19, 22..26, 29, 30];

Типы строк

Строки представляют собой последовательность символов.

Название Макси­мальная длина Нулевой символ в конце (#0) Вид строки и директива компилятора
ShortString   Нет Короткая строка со счетчиком длины
AnsiString 2 Гб Есть Длинная строка с символом #0 в конце
String 2 Гб Есть {$ H+ }‑ тип AnsiString
String [n]   Нет {$H‑ } или есть n ‑ тип ShortString
WideString 1 Гб Есть Строка 16‑ битовых символов Unicode

Пример:

Type Fam=String; Var FamStud, FamPrep: Fam; Date: String [8]

Функция Length(s) возвращает длину текущего значения строки.

Процедура SetLength(s, n) переопределяет строку (s) с новой длиной в n символов; при этом сохраняются начальные символы и удаляются последние символы при уменьшении длины строки.

Строка трактуется как одномерный массив символов типов AnsiChar или WideChar соответственно. Доступ к отдельному символу строки можно осуществлять по его порядковому номеру (отсчет от 1 ‑ для коротких и от 0 - для длинных строк).

Пример: A: =Fam[5]; {выбирается пятый символ строки Fam}

Строку можно объявить в виде массива:

Type TS=Array [0..1000] Of Char; Var S1, S2: TS;

К строкам можно применять операцию сцепления строк «+», стро­ко­вые процедуры и функции (п. 1.2.5).

Пример. Используя переменные fam, imj, otch, famio, присвоить переменной famio текст «Иванов И.И.»

fam: ='Иванов'; imj: ='Иван'; otch: ='Иванович';

famio: =fam+' '+copy(imj, 1, 1)+'. '+copy(otch, 1, 1)+'.'






© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.