Стандартные типы данных. Операции и функции над данными разных типов.
Любые объекты, т.е. константы, переменные, значения функций или выражения, в Паскале характеризуются своими типами. Тип определяет множество допустимых значений того или иного объекта, а также множество операций, которые к нему применимы. Кроме того, тип определяет формат внутреннего представления данных в памяти ЭВМ.
Паскаль характеризуется разветвленной структурой типов данных:
Простые типы.
К простым типам относятся порядковые и вещественный типы.
Порядковые типы отличаются тем, что каждый из них имеет конечное число возможных значений. Эти значения можно определенным образом упорядочить и, следовательно, с каждым из них можно сопоставить некоторое целое число - порядковый номер значения.
В Паскале есть следующие порядковые типы:
Integer - целый тип, представляет собой подмножество множества целых чисел, определяемое конкретной реализацией. Во внутреннем представлении он занимает 2 байта, диапазон возможных значений - от -32768 до +32767, данные представляются точно.
Char - символьный тип, представляет собой набор символов, определяемый конкретной реализацией. Во внутреннем представлении он занимает 1 байт, множество значений этого типа фиксировано и упорядочено. Все символы считаются перенумерованными, начиная с нуля. Такой набор символов определен в каждой вычислительной сисеме. Он необходим, по крайней мере, для связи системы с внешним миром.
Константой символьного типа является один из допустимых символов, взятый в апострофы. Если апостроф сам является символом, то апостроф, являющийся значением константы, записывается дважды, например ‘7’ , ‘+’ , ‘F’ , ‘’’’ , ‘j’ , ‘?’ .
Boolean - логический тип, определяет диапазон логических значений, который содержит два элемента False (ложь) и True (истина). Во внутреннем представлении он занимает 1 байт.
Перечисляемый тип - задается перечислением тех значений, которые он может получать. Каждое значение именуется некоторым идентификатором и располагается в списке, обрамленном круглыми скобками, например:
Type colors = (red, white, blue, black);
Тип-диапазон - подмножество своего базового типа, в качестве которого может быть любой порядковый тип, кроме типа-диапазон. Тип- диапазон задается границами своих значений внутри базового типа
<минимальное значение> . .<максимальное значение>
При определении типа-диапазон нужно руководствоваться следующими правилами:
-".." рассматриваются как один символ, поэтому между точками пробелы недопустимы;
- левая граница не должна превышать правую границу.
Пример: Type month = 1 ..12;
lat = ’a’ .. ’z’;
Вещественный тип, строго говоря, тоже имеет конечное число значений, которое определяется форматом внутреннего представления вещественного числа. Однако количество возможных значений вещественного числа настолько велико, что сопоставить с каждым из них целое число не представляется возможным.
Real - вещественный тип, представляет собой определяемое конкретной реализацией подмножество множества вещественных чисел. Во внутреннем представлении он занимает 6 байт, диапазон возможных значений - от 2.9Е-39 до 1.7Е+38, точность представления данных - 11...12 значащих цифр.
Примечание. В системе программирования Турбо-Паскаль определено несколько дополнительных простых типов данных для целых и вещественных величин. Они различаются своими диапазонами значений и размером занимаемой памяти. Информация о них представлена в следующих таблицах.
Целые числа
Тип | Диапазон | Размер в байтах |
Byte Shortint Word Longint | 0 ... 255 -128 ... 127 0 ... 65535 -2147483648 ... 2147483647 | 1 1 2 4 |
Вещественные числа
Тип | Диапазон | Знач. цифры | Размер в байтах |
Single Double Extended | 1.5E-45 ... 34E38 5E-324 ... 1.7E308 1.6E-4951...1.1E4932 | 7-8 15-16 19-20 | 4 8 10 |
Операции.
В таблице приведены арифметические операции, которые определены для целого и вещественного типов:
Знак операции | Операция | Типы операндов | Тип результата |
+ | Сложение | Целый или вещественный | Целый, если оба операнда целого типа, в противном случае - вещественный. |
- | Вычитание | Целый или вещественный | |
* | Умножение | Целый или вещественный | |
/ | Деление | Целый или вещественный | Вещественный |
Div | Целочисленное деление | Целый | Целый |
Mod | Остаток от целочисленного деления | Целый | Целый |
В Паскале определены следующие логические операции:
Not - логическое НЕ;
And - логическое И;
Or - логическое ИЛИ;
Xor - исключительное ИЛИ.
Данные операции определяются следующим образом
P | Q | Not P | P And Q | P Or Q | P Xor Q |
True True False False | True False True False | False False True True | True False False False | True True True False | False True True False |
В Паскале используются следующие операции отношения: =, <>, >, <, <=, >=. Операции сравнения применимы к данным простых типов. Сравнивать можно между собой значения одного типа: целые, вещественные, символьные, логические, значения перечисляемого типа. Допустимо также сравнивать между собой целые и вещественные числа.
При вычислении выражений любого типа приоритет вычислений определяется расставленными скобками, а при их отсутствии по следующей таблице (в порядке убывания приоритета).
Приоритет | Операция |
1 2 3 4 | Not *, /, Div, Mod, And +, -, Or, Xor =,<>, <, >, <=, >= |
Дата добавления: 2014-12-24; просмотров: 2419;