Тема. Порядковый тип данных.
К порядковым типам относятся: целые, логические, символьные, перечисляемые и тип-диапазон.
К любому из них применимы функции:
- Ord(a) - возвращает порядковый номер значения выражения;
- Pred(a) - предыдущее значение порядкового типа;
- Succ(a) - следующее значение порядкового типа.
1. Символьный тип данных
Значением символьного типа является множество всех символов ПК. Каждому слову приписывается целое число в диапазоне 0...255. Это число служит кодом внутреннего представления символа, его возвращает функция Ord. Для кодировки используется код ASCII (American Standard Code for Information Interchange - американский стандартный код для обмена информацией). Это 7-битный код. В то же время в 8-битном коде, отведенном для хранения символов в Паскаль, можно закодировать в 2 раза больше символов в диапазон от 0...255. Первая половина символов ПК соответствует стандарту ASCII. Вторая же ограничена жесткими рамками стандарта и может применяться на ПК разных типов. Символы с кодами 0...31 относятся к служебным кодам. Если эти коды используются в символьном тексте, то они считаются пробелами. К типа Char применимы следующие операции отношения, а также встроенные функции:
- Chr(b)- функция типа Char преобразует выражение b типа Byte в символ и возвращает его своим значением №
- Upcase(ch) - возвращает прописную букву.
Пример 10. Введенную строчную букву преобразовать в прописную.
program pr10_char;
   var a: char;
   begin
     writeln('введите строчную английскую букву');     
    writeln(upcase(a)); // Upcase(а) - возвращает прописную букву
     readln;
   end.

2. Перечисляемый тип данных
Задается перечислением тех значений, которые он может получать.
     Объявление: Var Manth: (Jen, Feb, March, April, May, June, July, August, Sep, Oct, Nov< Dec).
 
Переменная Manth может принимать только одно из перечисленных в скобках значений. Эти значения не являются  строками, их нельзя вывести на печать, однако их удобно применять при программировании.
3. Логический тип данных
Переменная логического типа может принимать только два значения: false или true.
4. Тип - диапазон
Тип-диапазон есть подмножество своего базового типа, в качестве которого может выступать любой порядковый тип. Задается границами своих значений внутри базового типа.
Пример 11. С клавиатуры вводятся две даты. Выдать сообщение "Правильно", если первая введенная дата предшествует второй, "Неправильно", если наоборот.
program pr11_tupe_diapazon;
  uses crt;
  var 
  dn1,dn2:1..31;
  mes1, mes2:1..12;
  god1,god2:1900..2100;
   begin
     write('введите первую дату');
     readln(dn1,mes1,god1);
     write('введите вторую дату');
     readln(dn2,mes2,god2);
     if (((dn1<dn2) or (mes1<mes2)) and (god1=god2))or (god1<god2) then 
     writeln('правильно') else writeln('неправильно');
     repeat until keypressed;
   end.









 
 

