3.3 предопределённый целый типВ Аде предопределён целый тип Integer. Наибольшее и наименьшее значение типа определяются конкретной реализацией и задаются значениями констант Max_lnt и Min_lnt из пакета System. Создание объекта целого типа выполняется с помощью конструкции: Имя_переменной : INTEGER; Например: Size : Integer; А, В, С : Integer; Vol : Constant Integer : = 25', - - целая константа X : Integer := 10; -- задание начального значения Для целого типа разрешены следующие операции (в порядке убывания их приоритетов): операции высшего приоритета (результат типа Integer) ABS (абсолютная величина), ** (возведение в степень) мультипликативные операции (результата типа Integer) *, /, MOD (вычет по модулю), REM (остаток) унарные и бинарные аддитивные операции (результат типа Integer) операции принадлежности (результат типа Boolean) In Not In операции отношения (результат типа Boolean) Ф < < > 33 Глава З. Предопределенные типы 32 Ада 95. Введение в программирование
Ограничение значений, которые могут принимать объекты целого типа, выполняется с помощью конструкции RANGE L .. R, называемой ограничением диапазона: . 10; , 99 : = 35; разрешается Number : Integer range 1 Cent : Integer range 1 использовать Для целых десятичных литералов различные системы счисления: 5Е+3 456_77 356 десятичную - - 3 564 двоичную --2#11001022# восьмеричную --8#417# шестнадцатеричную --16#6AOF# Для целого типа также предопределены подтипы: Short_lnteger (короткий целый ) и Long_lnteger ( длинный целый ), которые определяют более узкие и более широкий диапазоны целых чисел, чем тип Integer. Кроме того, можно использовать подтипы Natural и Positive, описанные в пакете Standard: Операции над объектами предопределённого типа Float: ABS ** + , - (унарные операции) + , - (бинарные операции) Ф < > < > In Not In Вещественные литералы, в отличие от целых, должны содержать десятичную точку: 0.0 0.1 12346.89 2.00Е-4 2.234Е+03 10000000.00 Кроме того, вещественные литералы разрешается представлять в других системах счисления: 2#1011.1101# 2#1010.001#Е-2 8#1074.22# 8#6517720.563#Е+12 16#0.12765А# 16#F01B.4576#E-03 П Пример: Использование в процедуре предопределенных типов : range 0.. integer'last; range 1 .. integer'last; subtype NATURAL is integer subtype POSITIVE is integer Атрибуты целого типа и объектов целого типа: • T'LAST - - наибольшее значение типа Т, • T'FIRST - - наименьшее значение типа Т. |
| Оглавление| |