Лекция №6. Простые типы данных и их обработка

Тип определяет множество значений, которые могут принимать объекты программы (константы, переменные), а также совокупность операций, допустимых над этими значениями. Например, 1 и 3 относятся к целочисленному типу и над ними можно выполнить любые арифметические операции.

Целочисленный тип.В ТР это интервал целых положительных или отрицательных чисел. Операции над целыми числами определены лишь тогда, когда исходные данные и результат лежит в этом интервале. Иначе возникает ситуация, называемая переполнением.

Название целого типа Диапазон возможных значений Память, байт
Byte (байтовый) 0 - 255
Shortint (короткий целый) -128 - 127
Integer (целый) -32 768 - 32767
Word (слово) 0 – 65 535
Longint (длинный целый) -2 147 483 648 – 2 147 483 647

Byte и Word – беззнаковые типы.

Вещественный тип. Любые (целые и дробные) числа в некотором диапазоне.

Вещественный тип Диапазон возможных значений Память, байт
Single (с одинарн.точн.) 1,5е-45 – 3,4е38
Real (вещественный) 2,9е-39 – 1,7е38
Double (с двойной точн.) 5,0е-324 – 1,7е308
Extended (с повыш.точн.) 3,7е-4932 – 1,1е4932

Вещественные числа могут записываться двумя способами – в общепринятой и в экспоненциальной форме. При общепринятой форме записи целая часть отделяется от дробной точкой. Если точка отсутствует – число считается целым, например 12.25, -0.148. В экспоненциальной форме записи используется степень числа 10. При этом число изображается так: пишется мантисса, знак умножения опускается, вместо основания 10 пишется буква е, а следом указывается порядок (показатель степени), например: 5,18е+02 (518), 10е-03 (0,01).

Логический тип - boolean.Переменные этого типа могут принимать значения True(истина),False(ложь). Память, выделяемая переменным этого типа, равна 1 байту.

Символьный тип - char.Любые символы компьютерного алфавита, например: 'a', '5', '+', '$'. Значение переменной символьного типа обязательно нужно заключать в апострофы, причем сами апострофы не входят в состав символа.

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

Константы могут быть именованными, типизированными и зарезервированными.

Пример объявления именованных констант:

Сonst

g = 9.8; - вещественная константа

nmax = 100; - целая константа

s = 'abcd'; - строковая константа

kod = $123; - шестнадцатеричная константа

Пример объявления типизированных констант:

Сonst

ocenka: byte = 5;

predmet : string = 'Информатика';

Без предварительного описания в программе можно использовать значения зарезервированных (предопределенных) констант.

Идентификатор Тип Значение Описание
true boolean true Истина
false boolean false Ложь
maxint integer 32 767 Максим. целое
maxlongint integer 2 147 483 647 Макс. длинное целое

Особенностью языка ТР является предоставляемая им возможность создания новых, пользовательских типов данных: перечисляемого и интервального.

Описание перечисляемого типа данных имеет следующий вид, например:

Type

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

Var

day: days;

Интервальныйтип задает две константы, определяющие границы диапазона для данной переменной - отрезок типа. Например:

Const

min = 1;

max = 31;

Type

days = min..max;

Var

day1, day2: days;

Перечисляемый и интервальный типы данных совместно с целыми, логическим и символьным относятся к порядковым типам. Порядковые типы обладают четырьмя характеристиками:

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

Значения любого порядкового типа, за исключением целочисленного начинается с порядкового номера ноль (следующий порядковый номер 1, 2, 3…)

Порядковым номером значенияцелочисленного типа является само значение.

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

Для работы с данными порядковых типов в ТР используются функции:

- Ord(s) – возвращает порядковый номер значения s в множестве, определенным типом s.

- Pred(s) –возвращает элемент, предшествующий s в списке значений типа.

- Succ(s) – возвращает значение, следующее за s в списке значений типа.

Например:

Var

d: (pen, note, book, pencil); àпеременная перечисляемого типа

………………

Ord (pen) àвернет значение0;

Pred (3) àвернет значение2;

Succ (2) àвернет значение3.

Наши рекомендации