Π’ΠΈΠΏ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ Π² ΡΠ·ΡΠΊΠ΅ ΠΠ°ΡΠΊΠ°Π»Ρ
ΠΠΎΠ½ΡΡΠΈΠ΅ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²Π° Π² ΡΠ·ΡΠΊΠ΅ ΠΠ°ΡΠΊΠ°Π»Ρ ΠΎΡΠ½ΠΎΠ²ΡΠ²Π°Π΅ΡΡΡ Π½Π° ΠΌΠ°ΡΠ΅ΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠΌ ΠΏΡΠ΅Π΄ΡΡΠ°Π²Π»Π΅Π½ΠΈΠΈ ΠΎ ΠΊΠΎΠ½Π΅ΡΠ½ΡΡ
ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²Π°Ρ
: ΡΡΠΎ ΠΎΠ³ΡΠ°Π½ΠΈΡΠ΅Π½Π½Π°Ρ ΡΠΎΠ²ΠΎΠΊΡΠΏΠ½ΠΎΡΡΡ ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ
ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ². ΠΠ»Ρ ΠΏΠΎΡΡΡΠΎΠ΅Π½ΠΈΡ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΎΠ³ΠΎ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²Π΅Π½Π½ΠΎΠ³ΠΎ ΡΠΈΠΏΠ° ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»ΡΠ΅ΠΌΡΠΉ ΠΈΠ»ΠΈ ΠΈΠ½ΡΠ΅ΡΠ²Π°Π»ΡΠ½ΡΠΉ ΡΠΈΠΏ Π΄Π°Π½Π½ΡΡ
. Π’ΠΈΠΏ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ², ΡΠΎΡΡΠ°Π²Π»ΡΡΡΠΈΡ
ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ, Π½Π°Π·ΡΠ²Π°Π΅ΡΡΡ Π±Π°Π·ΠΎΠ²ΡΠΌ ΡΠΈΠΏΠΎΠΌ.
ΠΠ½ΠΎΠΆΠ΅ΡΡΠ²Π΅Π½Π½ΡΠΉ ΡΠΈΠΏ ΠΎΠΏΠΈΡΡΠ²Π°Π΅ΡΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΠ»ΡΠΆΠ΅Π±Π½ΡΡ
ΡΠ»ΠΎΠ² Set of, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ:
type M = Set of B;
ΠΠ΄Π΅ΡΡ Π — ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²Π΅Π½Π½ΡΠΉ ΡΠΈΠΏ, Π — Π±Π°Π·ΠΎΠ²ΡΠΉ ΡΠΈΠΏ.
ΠΡΠΈΠΌΠ΅Ρ ΠΎΠΏΠΈΡΠ°Π½ΠΈΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²Π΅Π½Π½ΠΎΠ³ΠΎ ΡΠΈΠΏΠ°:
type.
M = Set of 'A'.'D';
var.
MS: M;
ΠΡΠΈΠ½Π°Π΄Π»Π΅ΠΆΠ½ΠΎΡΡΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ
ΠΊ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²Π΅Π½Π½ΠΎΠΌΡ ΡΠΈΠΏΡ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»Π΅Π½Π° ΠΏΡΡΠΌΠΎ Π² ΡΠ°Π·Π΄Π΅Π»Π΅ ΠΎΠΏΠΈΡΠ°Π½ΠΈΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ
:
var C: Set of 0.7;
ΠΠΎΠ½ΡΡΠ°Π½ΡΡ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²Π΅Π½Π½ΠΎΠ³ΠΎ ΡΠΈΠΏΠ° Π·Π°ΠΏΠΈΡΡΠ²Π°ΡΡΡΡ Π² Π²ΠΈΠ΄Π΅ Π·Π°ΠΊΠ»ΡΡΠ΅Π½Π½ΠΎΠΉ Π² ΠΊΠ²Π°Π΄ΡΠ°ΡΠ½ΡΠ΅ ΡΠΊΠΎΠ±ΠΊΠΈ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² ΠΈΠ»ΠΈ ΠΈΠ½ΡΠ΅ΡΠ²Π°Π»ΠΎΠ² Π±Π°Π·ΠΎΠ²ΠΎΠ³ΠΎ ΡΠΈΠΏΠ°, ΡΠ°Π·Π΄Π΅Π»Π΅Π½Π½ΡΡ
Π·Π°ΠΏΡΡΡΠΌΠΈ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ:
['A', 'C'] [0, 2, 7] [3, 7, 11.14].
ΠΠΎΠ½ΡΡΠ°Π½ΡΠ° Π²ΠΈΠ΄Π° [ ] ΠΎΠ·Π½Π°ΡΠ°Π΅Ρ ΠΏΡΡΡΠΎΠ΅ ΠΏΠΎΠ΄ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ. ΠΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ Π±Π°Π·ΠΎΠ²ΡΡ
ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΠΏΡΠ΅Π²ΡΡΠ°ΡΡ 256. ΠΠ½ΠΈΡΠΈΠ°Π»ΠΈΠ·Π°ΡΠΈΡ Π²Π΅Π»ΠΈΡΠΈΠ½ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²Π΅Π½Π½ΠΎΠ³ΠΎ ΡΠΈΠΏΠ° ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΡΡΡ Ρ ΠΏΠΎΠΌΠΎΡΡΡ ΡΠΈΠΏΠΈΠ·ΠΈΡΠΎΠ²Π°Π½Π½ΡΡ
ΠΊΠΎΠ½ΡΡΠ°Π½Ρ:
const seLit: Set of 'A'.'D'= [];
ΠΠΎΡΡΠ΄ΠΎΠΊ ΠΏΠ΅ΡΠ΅ΡΠΈΡΠ»Π΅Π½ΠΈΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² Π±Π°Π·ΠΎΠ²ΠΎΠ³ΠΎ ΡΠΈΠΏΠ° Π² ΠΊΠΎΠ½ΡΡΠ°Π½ΡΠ°Ρ
Π±Π΅Π·ΡΠ°Π·Π»ΠΈΡΠ΅Π½. ΠΠ½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²Π΅Π½Π½ΠΎΠ³ΠΎ ΡΠΈΠΏΠ° ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π·Π°Π΄Π°Π½ΠΎ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΈΠ΅ΠΉ Π²ΠΈΠ΄Π° [T], Π³Π΄Π΅ T — ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ Π±Π°Π·ΠΎΠ²ΠΎΠ³ΠΎ ΡΠΈΠΏΠ°. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, Π²ΠΏΠΎΠ»Π½Π΅ Π΄ΠΎΠΏΡΡΡΠΈΠΌΠ° ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΈΡ:
type T = set of char;
ΠΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ Π²ΠΊΠ»ΡΡΠ°Π΅Ρ Π² ΡΠ΅Π±Ρ Π½Π°Π±ΠΎΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠΎΠ² Π±Π°Π·ΠΎΠ²ΠΎΠ³ΠΎ ΡΠΈΠΏΠ°, Π²ΡΠ΅ ΠΏΠΎΠ΄ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²Π° Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²Π°, Π° ΡΠ°ΠΊΠΆΠ΅ ΠΏΡΡΡΠΎΠ΅ ΠΏΠΎΠ΄ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ. Π’Π°ΠΊ, ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½Π°Ρ Π’ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²Π΅Π½Π½ΠΎΠ³ΠΎ ΡΠΈΠΏΠ°:
var T: Set of 1.3;
ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠΈΠ½ΠΈΠΌΠ°ΡΡ Π²ΠΎΡΠ΅ΠΌΡ ΡΠ°Π·Π»ΠΈΡΠ½ΡΡ
Π·Π½Π°ΡΠ΅Π½ΠΈΠΉ: [ ] [1] [2] [3] [1,2] [1,3] [2,3] [1,2,3].
Π ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠΌ ΠΈ ΠΊΠΎΠ½ΡΡΠ°Π½ΡΠ°ΠΌ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²Π΅Π½Π½ΠΎΠ³ΠΎ ΡΠΈΠΏΠ° ΠΏΡΠΈΠΌΠ΅Π½ΠΈΠΌΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ ΠΏΡΠΈΡΠ²Π°ΠΈΠ²Π°Π½ΠΈΡ (:=), ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ (+), ΠΏΠ΅ΡΠ΅ΡΠ΅ΡΠ΅Π½ΠΈΡ (*) ΠΈ Π²ΡΡΠΈΡΠ°Π½ΠΈΡ (-):
['A','B'] + ['A','D'] Π΄Π°ΡΡ ['A','B','D'].
['A','D'] * ['A','B','C'] Π΄Π°ΡΡ ['A'].
['A','B','C'] - ['A','B'] Π΄Π°ΡΡ ['C'].
Π Π΅Π·ΡΠ»ΡΡΠ°Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΡΡΠΈΡ
ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ Π΅ΡΡΡ Π²Π΅Π»ΠΈΡΠΈΠ½Π° ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²Π΅Π½Π½ΠΎΠ³ΠΎ ΡΠΈΠΏΠ°.
Π ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²Π΅Π½Π½ΡΠΌ Π²Π΅Π»ΠΈΡΠΈΠ½Π°ΠΌ ΠΏΡΠΈΠΌΠ΅Π½ΠΈΠΌΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ:
ΡΠΎΠΆΠ΄Π΅ΡΡΠ²Π΅Π½Π½ΠΎΡΡΡ (=), Π½Π΅ΡΠΎΠΆΠ΄Π΅ΡΡΠ²Π΅Π½Π½ΠΎΡΡΡ (), ΡΠΎΠ΄Π΅ΡΠΆΠΈΡΡΡ Π² (=). Π Π΅Π·ΡΠ»ΡΡΠ°Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΡΡΠΈΡ
ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ ΠΈΠΌΠ΅Π΅Ρ Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΈΠΉ ΡΠΈΠΏ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ:
['A','B'] = ['A','C'] Π΄Π°ΡΡ FALSE.
['A','B'] ['A','C'] Π΄Π°ΡΡ TRUE.
['B'] <= ['B','C'] Π΄Π°ΡΡ TRUE.
['C','D'] >= ['A'] Π΄Π°ΡΡ FALSE.
ΠΡΠΎΠΌΠ΅ ΡΡΠΈΡ
ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ Ρ Π²Π΅Π»ΠΈΡΠΈΠ½Π°ΠΌΠΈ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²Π΅Π½Π½ΠΎΠ³ΠΎ ΡΠΈΠΏΠ° Π² ΡΠ·ΡΠΊΠ΅ ΠΠΠ‘ΠΠΠΠ¬ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡ in, ΠΏΡΠΎΠ²Π΅ΡΡΡΡΠ°Ρ ΠΏΡΠΈΠ½Π°Π΄Π»Π΅ΠΆΠ½ΠΎΡΡΡ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ° Π±Π°Π·ΠΎΠ²ΠΎΠ³ΠΎ ΡΠΈΠΏΠ°, ΡΡΠΎΡΡΠ΅Π³ΠΎ ΡΠ»Π΅Π²Π° ΠΎΡ Π·Π½Π°ΠΊΠ° ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ, ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²Ρ, ΡΡΠΎΡΡΠ΅ΠΌΡ ΡΠΏΡΠ°Π²Π° ΠΎΡ Π·Π½Π°ΠΊΠ° ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ.
Π Π΅Π·ΡΠ»ΡΡΠ°Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΡΡΠΎΠΉ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΈ — Π±ΡΠ»Π΅Π²ΡΠΊΠΈΠΉ.
ΠΠΏΠ΅ΡΠ°ΡΠΈΡ ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ ΠΏΡΠΈΠ½Π°Π΄Π»Π΅ΠΆΠ½ΠΎΡΡΠΈ ΡΠ»Π΅ΠΌΠ΅Π½ΡΠ° ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²Ρ ΡΠ°ΡΡΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ Π²ΠΌΠ΅ΡΡΠΎ ΠΎΠΏΠ΅ΡΠ°ΡΠΈΠΉ ΠΎΡΠ½ΠΎΡΠ΅Π½ΠΈΡ, Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ:
'A' in ['A', 'B'] Π΄Π°ΡΡ TRUE,.
2 in [1, 3, 6] Π΄Π°ΡΡ FALSE.