Здавалка
Главная | Обратная связь

Целые типы в Pascal ABC



В Pascal ABC имеется три стандартных типа целых чисел: Byte, Integer и Word. Диапазон их возможных значений зависит от внутреннего представления числа, которое может занимать один, два или четыре байта. В таблице 3 приведены характеристики этих целых типов.

Таблица 3

Классификация целых типов

Длина, байт Название Диапазон Примечание
BYTE WORD INTEGER от 0 до 255 от 0 до 65535 от -2147483648 до +2147483647 Короткое целое без знака Целое без знака Целое со знаком  

Компилятор языка Pascal ABC определяет максимальное значение MAXINT для данных типа INTEGER. При этом справедливо будет соотношение:

-MAXINT <= K <= MAXINT

Описание переменных целых типов производится в разделе описаний VAR:

Var <имя переменной> : <целый тип>;

где <целый тип > может быть определен как Byte, Integer или Word.

Например:

VAR K: INTEGER;

I, J:BYTE;

Для целых типов определены следующие операции: сложение, вычита­ние (имеют более низкий приоритет), умножение и деление - DIV, MOD. К целым типам применимы функции из таблицы 4. Функции TRUNC(X) и ROUND(X) с вещественным аргументом также дают целый результат (см. табл. 2). Стандартные математические функции в случае задания целого аргумента всегда возвращают вещественные значения (см. табл. 2).

При использовании процедур и функций с целочисленными параметрами следует руководствоваться правилом «вложенности» типов, т.е. везде, где в качестве аргумента используется тип WORD, можно применять тип BYTE. Для арифмети­ческих операций, если операнды относятся к разным целым типам, тип результата имеет максимальную мощность диапазона, т.е. для типов операндов Byte и Word в выражении тип результата будет Word.

Таблица 4

Встроенные процедуры и функции для целых типов

Обращение Тип результата Действие
ABS(X) SQR(X) CHR(B)) ODD(L)     RANDOM(W)     DEC(Х, [i] ) INC(Х , [i] ) Как у аргумента Как у аргумента CHAR BOOLEAN     Как у аргумента     Процедура Процедура Возвращает модуль числа Х Возвращает квадрат числа Х Возвращает символ по его коду Возвращает значение TRUE, если аргумент – нечетное число, FALSE - если четное Возвращает псевдослучайное число, равномерно распределенное на интервале 0<=X<=W Уменьшает Х на 1 [на i] Увеличивает Х на 1 [на i]

Вещественные типы

В отличие от целых типов значения вещественных типов опреде­ляют число с десятичной точкой лишь с некоторой точностью, зависящей от внутреннего представления числа. Вещественное число в памяти ПК хранится в формате, состоящем из знака, мантиссы и порядка числа. Десятичная точка подразумевается стоящей перед левым (старшим) разрядом мантиссы (такая мантисса называется нормализованной). При выполнении операций десятичная точка сдвигается путем выполнения умножения мантиссы наE (символ экспоненты) с порядком.

Например, запись числа в виде: <знак> <мантисса> Е <порядок> соответствует представлению числа <знак> <мантисса>*10 <порядок>.

В Pascal ABC используются только два вещественных типа – REAL и COMPLEX , характеристики которых приведены в таблице 5.

Таблица 5

Вещественные типы

Длина, байт Название типа Значащие цифры мантиссы Диапазон десятич­ного порядка
REAL COMPLEX 15..16 15..16 -324 …+308 -324 …+308

Объявление переменных вещественных типов производится в разделе описаний переменных VAR аналогично переменным целых типов в виде:

Var <переменная> : <вещественный тип>;

где <вещественный тип > может быть задан только Real или Complex.

Для работы с вещественными типами определены стандартные функ­ции: sin, cos, arctаn, ln, exp, sqr, abs, sqrt (табл. 2), а также функции вещественного типа (табл. 6).

Таблица 6

Встроенные функции вещественного типа

Обращение Тип параметра Тип результата Примечание
Pi Frac(Х) Int(x) Random Randomize - вещественный вещественный - - вещественный вещественный вещественный вещественный - Pi = 3,141592653 Дробная часть Х Целая часть x 0<x<1 - случайное число Инициализация датчика случайных чисел

При этом операции +, -, *, / в арифметическом выражении дают вещественный результат, если хотя бы один из операндов вещественный.







©2015 arhivinfo.ru Все права принадлежат авторам размещенных материалов.