Основы алгоритмизации и программирования. Часть третья. Структурированные типы данных. Асламова В.С - 35 стр.

UptoLike

69
Тип Set:
Задать значения переменной множеств можно следующим образом:
Значения переменной множеств:
Приведем примеры описаний множеств:
Type elemcolor == (red, yellow, blue);
Color=set of elemcolor; mntype:= set of a..f;
Var
m: color, v: set of(l ..5,9,15);
у: set of 0..100
C: set оf (а,и,у,о,э,ю,я);
begin
m:=[ ]: {пустое множество};
x:=2;
V: =[x..x+4,2+4+1];c:=[а,о
,и]; ….
end.
В качестве элементов в изображении множеств допускаются
выражения, тип которого совпадает с базовым типом множества.
Необходимо помнить, что множества - это бесповторная совокупность
элементов, поэтому следующие три изображения обозначают одно и то же
множество:
[1, 2, 3]
[1,1,2,2,3]
;
Set
of
Порядковый тип
;
Идентифи-
катор
выражение
выражение
:= [
,
,
..
] ;
70
[3,1,2,3,3,1]
Полезность того или иного типа определяется, в первую очередь,
набором допустимых операций над значениями этих типов. Для
множественных типов определены следующие группы операций, которые
показаны в таблице 3.
Таблица 3.Операции над множествами.
Приоритет
выполнения
операции
Название операции
Обозначение
операции
Тип
Операндов
A и B
Тип
результата
1
наивысший
Пересечение множеств А*B
множество множество
2 Объединение множеств
Дополнение множеств
А+B
А-B
множество
множество
множество
множество
3 Проверка на равенство
Проверка на неравенство
Проверка на вхождение
множества B во множество
А
Проверка на принадлеж-
ность элемента i множеству
A
А=B
А<>B
А>=B
А<=B
i IN А
множество
множество
множество
множество
переменная i
и множество А
должны иметь
один тип
Boolean
Boolean
Boolean
Boolean
<A*B> - пересечение множествмножество, состоящее из элементов,
которые принадлежат и множеству А, и множеству В одновременно.
[1…10]*[5…15]=[5..10]
<A+B> – результат объединения множеств будет множество,
содержащее элементы множеств А и В с исключением дублирующих
элементов, т. е. повторяющиеся элементы во множество-результат будут
включены один раз.
[1, 2]+[3, 4]=[1..4]
<А-В> - дополнение множеств; множество, состоящее из
тех
элементов множества А, которые не принадлежат множеству В.
<А=В> - проверка эквивалентности двух множеств; возвращает TRUE,
если оба множества эквивалентны;
       Тип Set:                                                                       [3,1,2,3,3,1]
                                                                                     Полезность того или иного типа определяется, в первую очередь,
                                                                               набором допустимых операций над значениями этих типов. Для
         Set                            Порядковый тип
                          of                                    ;              множественных типов определены следующие группы операций, которые
                                                                               показаны в таблице 3.
                                                                           ;
     Задать значения переменной множеств можно следующим образом:                                                    Таблица 3.Операции над множествами.

                                                                                Приоритет                                                    Тип
       Значения переменной множеств:                                                                                     Обозначение                       Тип
                                                                               выполнения      Название операции                          Операндов
                                                                                                                          операции                      результата
                                                                                операции                                                    AиB
   Идентифи-                                                                        1        Пересечение множеств           А*B           множество     множество
     катор         :=      [          выражение           ..   выражение        наивысший
                                                                                    2         Объединение множеств          А+B           множество     множество
                                            ,                                                 Дополнение множеств            А-B          множество     множество
                                                                                    3       Проверка на равенство           А=B           множество       Boolean
                                                      ,                                     Проверка на неравенство         А<>B          множество       Boolean
                                                                                            Проверка на вхождение           А>=B          множество       Boolean
                                                                                            множества B во множество        А<=B          множество       Boolean
               ]               ;                                                            А
                                                                                            Проверка на принадлеж-          i IN А       переменная i
                                                                                            ность элемента i множеству                 и множество А
       Приведем примеры описаний множеств:                                                  A                                          должны иметь
                                                                                                                                          один тип
   Type elemcolor == (red, yellow, blue);
  Color=set of elemcolor; mntype:= set of ′a′..′f′;
  Var                                                                                 - пересечение множеств – множество, состоящее из элементов,
  m: color, v: set of(l ..5,9,15);
  у: set of 0..100                                                             которые принадлежат и множеству А, и множеству В одновременно.
  C: set оf (′а′,′и′,′у′,′о′,′э′,′ю′,′я′);                                                                    [1   10]*[5   15]=[5..10]
  begin
      m:=[ ]: {пустое множество};                                                     – результат объединения множеств будет множество,
      x:=2;                                                                    содержащее элементы множеств А и В с исключением дублирующих
      V: =[x..x+4,2+4+1];c:=[′а′,′о′,′и′]; .                                   элементов, т. е. повторяющиеся элементы во множество-результат будут
  end.
                                                                               включены один раз.
                                                                                                             [1, 2]+[3, 4]=[1..4]
      В качестве элементов в изображении множеств допускаются
выражения, тип которого совпадает с базовым типом множества.                         <А-В> - дополнение множеств; множество, состоящее из тех
Необходимо помнить, что множества - это бесповторная совокупность              элементов множества А, которые не принадлежат множеству В.
элементов, поэтому следующие три изображения обозначают одно и то же
                                                                                     <А=В> - проверка эквивалентности двух множеств; возвращает TRUE,
множество:
                                                                               если оба множества эквивалентны;
       [1, 2, 3]
       [1,1,2,2,3]
                                 69                                                                                  70