Типы данных, относящиеся к порядковым

Опишем теперь порядковые типы данных более подробно.

  1. Логический тип boolean имеет два значения: false и true, и для них выполняются следующие равенства:
2. ord(false)=0, ord(true)=1, false<true, 3. pred(true)=false, succ(false)=true,4. inc(true)=false, inc(false)=true, dec(true)=false, dec(false)=true.
  1. В символьный тип char входит 256 символов расширенной таблицы ASCII (например, 'a', 'b', 'я', '7', '#'). Номер символа, возвращаемый функцией ord(), совпадает с номером этого символа в таблице ASCII.
  2. Целочисленные типы данных сведем в таблицу:
Тип данных Количество Диапазон
байтов битов
shortintbyteintegerwordlongint 11224 88161632 -128..1270..255-32768..327670..65535-2147483648..2147483647 -27..27-10..28-1-215..215-10..216-1-231..231-1
  1. Перечисляемые3) типы данных задаются в разделе type явным перечислением их элементов. Например:
8. type week =(sun,mon,tue,wed,thu,fri,sat) 0 1 2 3 4 5 6

Напомним, что для этого типа данных:

inc(sat) = sun, dec(sun) = sat.
  1. Интервальные типы данных задаются только границами своего диапазона. Например:
10. type month = 1..12; budni = mon..fri;
  1. Программист может создавать и собственные типы данных, являющиеся комбинацией нескольких стандартных типов. Например:
type valid_for_identifiers = 'a'..'z','A'..'Z','_','0..9';

Этот тип состоит из объединения нескольких интервалов, причем в данном случае изменен порядок латинских букв: если в стандартном типе char 'A' < 'a', то здесь, наоборот, 'a' < 'A'. Для величин этого типа выполняются следующие равенства:

inc('z')='A'; dec('0')='_', pred('9')='8'; ord('b')= 2.