КОНСТАНТЫ

ПЕРЕМЕННЫЕ

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

Тип-диапазон.

В любом порядковом типе можно выделить подмножество значений, определяемое минимальным и максимальным значением, в которое входят все значения исходного типа, находящиеся в этих границах, включая и сами границы. Такое подмножество определяет тип-диапазон.

Type

<имя типа> = <минимальное значение>..<максимальное значение> ;

например:

Type

Number = 1..100;

Var num: Number;

 

Таблица 2

Тип Диапазон десятичного порядка Число значащих цифр Размер в байтах
Real -39…+38 11 – 12
Single -45…+38 7 – 8
Double -324…+308 15 – 16
Extended -4951…+4932 19 – 20
Comp -2*1063+1…2*1063-1 19 – 20

Типы Single, Double, Extended, Comp можно использовать в программе при наличии арифметического сопроцессора или при включенном эмуляторе сопроцессора.

Определяются:

в разделе объявления переменных программы;

в разделе объявления переменных подпрограммы;

в разделе объявления переменных модуля;

в заголовке подпрограммы.

Например, определение переменных в разделе объявления переменных программы может выглядеть следующим образом:

Var

<список переменных 1> : <тип 1> ;

<список переменных 2> : <тип 2> ;

……………………………………

<список переменных N> : <тип N> ;

Или с использованием раздела Type:

Type

Days = (Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday);

Var

X, Y, Z : real; {предопределенный тип}

I, J, K : integer; {предопределенный тип}

D : Days; {ранее определенный тип}

Digit : 0..9; {объявление нового типа}

В разделе объявления переменных можно использовать как стандартные, так и ранее объявленные типы, а также объявлять новый тип. В заголовке подпрограммы при объявлении переменных можно использовать только стандартные или ранее определенные типы.

Переменные объявленные не в подпрограмме называются глобальными, так как они доступны в любой части программы, в том числе и в подпрограмме. Они размещаются в сегменте данных, объем которого 65520 байт.

Переменные объявленные в подпрограмме называются локальными, так как они доступны только подпрограмме, в которой они объявлены.

Локальные переменные размещаются в стековом сегменте. По умолчанию его размер составляет 16384 байта. Однако, размер стека можно изменить в пределах от 1024 до 65520 байт.

Глобальные переменные находятся в памяти постоянно, локальные переменные размещаются в стеке лишь во время выполнения подпрограммы.

 

Используются двумя способами:

непосредственное использование значения константы;

использование имени константы.

Задание константы именами в разделе объявления констант. Имеется две разновидности констант:

обычные, у которых типы определяются их значением;

типизированные константы, для которых тип указывается в явном виде.

Обычные константы могут быть целого, вещественного, символьного, логического типа, а так же типа string.

Типизированные константы - это константы любого типа, кроме файлового типа.

Для обычных констант задаются имена и их значения, разделенные знаком равенства.

Const

<имя константы 1> = <значение 1> ;

<имя константы 2> = <значение 2> ;

..................................................

<имя константы N> = <значение N> ;

Целые константы.

Состоят из знаков и цифр. Диапазон целых десятичных чисел от -2147483648 до 2147483647, шестнадцатеричных от $00000000 до $FFFFFFFF.

В Turbo Pascal заданы два предопределенных целых числа:

MaxInt = 32767;

MaxLongInt = 2147453647.

Вещественные константы.

Содержат десятичную точку или показатель степени.

Const

X = 0.5 ;

Y = 7.5e+15 ;

Строковые и символьные константы.

Строка символов – это последовательность любого количества символов из набора АSСII, расположенных на одной строке и заключенных в апострофы (не более 126). Строка, состоящая из одного символа, называется символьной константой. При необходимости поместить в строку символ «апостроф», его следует написать дважды, например:

Язык ‘«Турбо-Паскаль»’ .

Константные выражения.

Это такие выражения, которые могут быть вычислены на стадии компиляции.

Const

Simv = ‘A’ ;

P = pi / 4 ;

Типизированные выражения.

Задается имя, тип и начальное значение.

Const

Max : integer = 999 ;

R : real = -0.5 ;