Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Информатика_1лабработа_401.doc
Скачиваний:
8
Добавлен:
10.11.2019
Размер:
385.54 Кб
Скачать

3. Основные типы данных и операции с ними

Целый тип. Обозначает множество целых чисел в различных диапазонах. Имеется пять целых типов, различающихся допустимым диапазоном значений и размером занимаемого объема памяти. Целые типы задаются служебными словами Integer, Byte, ShortInt, Word, LongInt. Характеристики этих типов приведены ниже в табл. 4.1

Таблица 4.1

Целый тип

Диапазон значений

Размер памяти

ShortInt

-128...127

1 байт

Integer

-32768...32767

2 байта

LongInt

-2147483648...2147483647

4 байта

Byte

0...255

1 байт

Word

0...65535

2 байта

Над целыми значениями допустимы следующие операции:

- четыре арифметических действия:

+ сложение,

- вычитание,

* умножение,

/ деление;

- две дополнительные операции "типа деления", обозначаемые служебными словами:

Div целочисленное деление (с отбрасыванием дробной части);

Mod взятие остатка от целочисленного деления.

Пример. 9 Div 2 = 4, 9 Mod 2 =1, 7 Mod 2 = 1.

Вещественный тип. Обозначает множество вещественных значений в различных диапазонах. Турбо Паскаль поддерживает четыре различных вещественных типа. Они задаются служебными словами Real, Single, Double, Extended,Comp и имеют следующие характеристики, приведенные в табл. 4.2.

Таблица 4.2

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

Диапазон

значений

Число цифр мантиссы

Размер памяти

Real

2,9e-39...1,7e38

11-12

6

Single

1,5e-45...3,4e38

7-8

4

Double

5e-324...1,7e308

15-16

8

Extended

3,4e-4932...1,1e493

19-20

10

Comp

-2e+63...+2e+63-1

8

Примечание: хотя тип Сomp считается вещественным, он содержит только целые числа, которые представляются в вычислениях как вещественные (с нулевой мантиссой).

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

Представление с фиксированной точкой

Представление с плавающей точкой

17.384

0.5

7E-2

12.25E6

Примечание: 7E-2 означает 7*10-2, 12.25E6 = 12.25*106.

Примеры неправильной формы записи чисел:

.3 (правильно 0.3)

10. (правильно 10.0)

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

Символьный тип Сhar. Значениями символьного типа являются символы из так называемого множества ASCII (American Standard Code For Information Interchange - стандартный американский код для обмена информацией). Это множество состоит из 256 различных символов, упорядоченных определенным образом, и содержит символы заглавных и строчных букв, цифр и различных других символов.

Над значениями символьного типа возможны операции сравнения

>, >=, <, <=, <>, =.

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

Ord(C) выдает кодовый номер символа C в кодовой таблице символов ASCII ( C - произвольный символ из таблицы символов ASCII ).

Например,

Ord (' ? ') = 63, Ord (' 1 ') = 49, Ord (' Y') = 89, Ord (' z ') = 122;

Chr( I ) по коду символа I определяет сам символ ; функции Ord и Chr – обратные друг к другу, т. е. Chr (Ord (' ? ') ) = ' ? ', а Ord (Chr (63) ) = 63 .

Pred ( C) и Succ (C) определят предыдущий и последующий символы от заданного . Например Pred('c') = 'b', Succ('y')= z. В данном случае имеется в виду последовательность букв латинского алфавита, порядковые номера которых (коды) следуют один за другим.

При реализации функций Pred и Succ необходимо помнить, что если предшествующего или последующего символа в наборе нет, то значение функции не определено и вызовет ошибку при выполнении программы.

Булевский (логический) тип. Имеется два значения булевского типа Boolean, представляющие логические значения (истина/ложь):

True (истина ),

False ( ложь ).

Над значениями булевского типа допустимы операции сравнения и 4 стандартные логические операции:

And логическое умножение

Or логическое сложение

Xor сложение по модулю 2 ( исключающее "или")

Not логическое отрицание ( унарная операция )

Значения булевского типа занимают один байт памяти.