Javascript must be enabled in your browser to use this page.
Please enable Javascript under your Tools menu in your browser.
Once javascript is enabled Click here to go back to �нтеллектуальная Кобринщина

Целые типы

В языке Паскаль определено пять целых типов.

Таблица. Целые типы Pascal

Тип

Диапазон допустимых значений

Отводимая память, в байтах

shotint

-128…127

1

integer

-32 768…32 767

2

longint

-2 147 483 648…2 147 483 647

4

byte

0…255

1

word

0…65 535

2

Переменные целого типа могут принимать только целые значения. Такие переменные в программе описываются следующим образом:

a, b, c: integer; 

Здесь a, b, c… - имена переменных, integer – тип переменных. Транслятор, встретив такое описание переменных a, b, c, запоминает, что эти переменные могут принимать только целые значения и формирует соответственно этому команды программы.

Таблица. Операции над целыми типами, дающие в результате значение целого типа 

Знак операции

Операция

+

Сложение

-

Вычитание

*

Умножение

div    Целочисленное деление (остаток отбрасывается). Деление без округления (целая часть частного).

mod  Деление по модулю (выделение остатка от деления). Остаток от деления: a mod b = a – ((a div b) * b).

Операции над операндами целого типа выполняются правильно только при условии, что результат и каждый операнд не меньше минимального (крайнего левого) и не больше максимального (крайнего правого) значений диапазона. Например, в Паскале существует константа maxint, в которой содержится максимально допустимое значение для типа integer. Тогда при выполнении операций в программе должны соблюдаться следующие условия:

(a операция b) <= maxint,

a <= maxint, b <= maxint.

Над целыми типами, как и многими другими, допустимы операции отношения (сравнения). Результат таких операций относится к типу boolean и может принимать одно из двух значений – либо true (истина), либо false (ложь).

Таблица. Операции отношения

Знак операции

Операция

=

Равно

<> 

Не равно

>=

Больше или равно

> 

Больше

<=

Меньше или равно

< 

Меньше

Целые типы могут приниматься в качестве фактических параметров рядом стандартных функций языка программирования Pascal.

Таблица. Стандартные функции Pascal, применимые к аргументам целых типов

Функция

Тип результата

Результат выполнения

abs(x)

Целый

Модуль x (абсолютная величина x)

sqr(x)

Целый

Квадрат x

succ(x)

Целый

Следующее значение x (x+1)

pred(x)

Целый

Предыдущее значение x (x-1)

random(x)

Целый

Случайное целое число из интервала 0..x-1.

sin(x)

Действительный

Синус x (угол в радианах)

cos(x)

Действительный

Косинус x (угол в радианах)

arctan(x)

Действительный

Арктангенс x (угол в радианах)

ln(x)

Действительный

Натуральный логарифм x

exp(x)

Действительный

Экспонента x

sqrt(x)

Действительный

Квадратный корень из x

odd(x)

Логический

Значение true, если x – нечетное число; false – если четное.

Функция random возвращает равномерно распределенное случайное целое число, если ей передан целый аргумент. При повторном запуске программы она возвращает те же значения. Во избежание этого следует в начале программы вызвать процедуру без параметров randomize.

Процедуры inc и dec могут иметь по одному или по два параметра целого типа. Если параметров два, то значение первого увеличивается (для inc) или уменьшается (для dec) на величину, равную значению второго параметра. Например, inc(x,2) равнозначно x+2. Если параметр один, то его значение увеличивается (для inc) или уменьшается (для dec) на единицу. Например, dec(x) равнозначно x-1. 

Следующие функции принимают в качестве аргументов значения вещественного типа, а возвращают значения целого типа:

trunc(x) – отбрасывание десятичных знаков после точки;

round(x) – округление до целого.

Примеры работы некоторых приведенных выше операций и функций:

Пример 1. Пусть a = 17, b = 5. Тогда a div b дает 3, a mod b дает 2 (остаток от деления), sqr(b) дает 25.

Пример 2. Пусть x = 4.7389. Тогда trunc(x) дает 4, round(x) дает 5.

Пример 3. Выражение 4 * 21 дает результат целого типа, а 4 * 21.0 – вещественного, т.к. один из сомножителей вещественный.