Неименованная константа

Множество-константа

Описание множеств

Множества

Конкатенация

Единственная операция, которую разрешается производить с переменными строкового типа, - это слияние строк или символов (конкатенация). Она полностью эквивалентна функции concat() и записывается при помощи знака "+". Таким образом, предыдущий оператор можно сделать более простым:

s:= copy(s,1,k-1) + new_char + copy(s,k+1,length(s)-k);

Еще один структурированный тип данных - это множество (set). В нем может содержаться не более 256 элементов.

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

В разделе var множества описываются следующим образом:

var <имя_множества>: set of <тип_элементов_множества>;

Элементы могут принадлежать к любому порядковому типу, размер которого не превышает 1 байт (256 элементов). Например:

var s1: set of char; {множество из 256-ти элементов} s2: set of 'a'..'z','A'..'Z'; {множество из 52-х элементов} s3: set of 0..10; {множество из 11-ти элементов} s4: set of boolean; {множество из 2-х элементов}

Множество можно задать неименованной константой прямо в тексте программы. Для этого необходимо заключить список элементов создаваемого множества в квадратные скобки:

[<список_элементов>]

Список элементов может быть задан перечислением элементов нового множества через запятую, интервалом или объединением этих двух способов. Элементы и границы интервалов могут быть переменными, константами и выражениями. Если левая граница интервала окажется больше правой, результатом будет пустое множество.

Примеры конструирования и использования различных множеств:

if c in ['a','e','i','o','u'] then writeln('Гласная буква');if set1 < [k*2+1..n,13] then set1:=[];