集合
目次
集合型は set of 基底型 と書き,基底型の要素を持つ集合を表します。
次のプログラムは,集合型を用いたプログラムの例です。
program sample(output);
var
a, b : set of 1..10;
begin
a := [ 1, 3, 5..8 ]; { a の要素は 1, 3, 5, 6, 7, 8 }
b := [ 1, 3, 6, 8 ]; { b の要素は 1, 3, 6, 8 }
writeln(a = b); { false }
writeln(a > b); { true }
writeln(5 in a); { true }
writeln(5 in b); { false }
end.
集合型のリテラルは,[ 2, 5, 5..8 ] のように角括弧で囲って書きます。
集合演算
集合型には次の演算子を用いることができます。
演算子 | 説明 | 例 |
---|---|---|
+ | 和集合 | [1,2,3] + [4] → [1,2,3,4] |
- | 差集合 | [1,2,3] - [2] → [1,3] |
* | 積集合 | [1,2,3] * [2,3,4] → [2,3] |
= | 等しい集合 | [1,2,3] = [1,2,3] → true |
<> | 異なる集合 | [1,2,3] <> [1,2,3] → false |
a < b, b > a | a は b の真部分集合 | [1,2,3] < [1,2,3] → false |
a <= b, b >= a | a は b の部分集合 | [1,2,3] <= [1,2,3] → true |
e in a | e は a の要素 | 1 in [1,2,3] → true |