Множества
Множество цифр [0,1,2,3,4,5,6,7,8,9]
Множество литер [‘A’, ’+’, ’9’ ]
Пустое множество [ ]
- [1,2,2,3 ] = [ 1,2,3]
- [ 1,3,2] = [1,2,3 ]
- [ I, K, K+2 ] [ 10,5,7]
- [1,2,3,4,5,6,7] = [1..7 ]
- [ I..J ] при I=J множество состоит из одного элемента; I>J - пустое множество.
Множественный тип
Type T=Set of < базовый тип>;
T1=Set of ‘A’..’Z’;
T2=Set of byte;
T3=Set of 1000..1255;
Var A,B: T1;
C: T2;
- A:=S;
- + объединение множеств; [1,3,4,5] + [2,3,5 ] = [1..5 ]
* пересечение множеств; [1,3,4,5] * [2,3,5 ] = [3,5 ]
- разность множеств; [1,3,4,5] - [2,3,5 ] = [1,4 ] - Добавление и исключение эл.
A:= A + [ x ] добавление
A:= A - [ x ] исключение - Операции сравнения
- Операция IN (определение принадлежности множеству)
(b=1) or (b=3) or (b=7) запишется b in [1,3,7 ] - Процедуры ввода – вывода не работают.
Строку литер входного файла оформить как множество
Var
A: set of car;
c: car;
Begin
A:=[ ];
Read(c);
While c<> #13 do
begin
A:= A+ [c ];
Read (c);
end;
………………………..
Фрагмент вывода сформированного множества литерного типа.
For I:= 0 to 255 do
begin
c:=Chr(I);
If c in A Then Write (c :2);