Интервальные типы данных

Что делать, чтобы стать программистом Что делать, чтобы стать программистом

Многие сегодня хотят стать программистами. Хотят. Но ничего не делают для этого. Не делают даже простых вещей. Не хотят даже прочитать книжку из 10 страниц. В итоге так и остаются никем. Потому что мечты не сбываются никогда. Сбываются только планы… Подробнее...

Интервальный тип - это диапазон значений любого порядкового типа. Этот диапазон задается программистом от минимального до максимального значения констант, разделенных двумя точками.

Хочу обратить ваше внимание на то, что именно ДВУМЯ точками. А не одной и не тремя. Часто начинающие не обращают на это внимание и потом не могут понять, почему компилятор выдаёт ошибку.

В качестве констант интервального типа могут использоваться константы целого, символьного, логического или перечисляемого типа. Скалярный тип, из которого выбирается диапазон интервального типа, называется базовым типом. Примеры диапазонов (отрезков):

1..31
‘A’..’Z’
-100..100

Минимальное значение интервального типа называется нижней границей диапазона. Максимальное значение называется верхней границей. Нижняя граница должна быть меньше верхней.

Интервальные типы используются очень часто в программировании, поэтому следует в этом хорошо разобраться.

Листинг 13.5. Использование интервальных типов.
program interval;

{$mode objfpc}{$H+}

uses
  {$IFDEF UNIX}{$IFDEF UseCThreads}
  cthreads,
  {$ENDIF}{$ENDIF}
  Classes
  { you can add units after this };

type TMyInt = -100..100;
type TMyChar = 'a'..'z';
type TMyCharCode = #97..#122;

begin
  Writeln('TMyInt : ', Low(TMyInt), '..', High(TMyInt));
  Writeln('TMyChar : ', Low(TMyChar), '..', High(TMyChar));
  Writeln('TMyCharCode : ', Low(TMyCharCode), '..', High(TMyCharCode));
  ReadLn;
end.
Домашнее задание:

Создайте программу из листинга 13.5. Запустите её и посмотрите, что получится. Попытайтесь догадаться, почему последние две строки выводят одинаковый диапазон. Попробуйте создать свой интервальный тип.


Инфо-МАСТЕР ®
Все права защищены ©
e-mail: mail@info-master.su

Яндекс.Метрика