Типы данных
В математике принято классифицировать переменные в соответствии с некоторыми важными характеристиками. Производится строгое разграничение между вещественными, комплексными и логическими переменными, между переменными, представляющими отдельные значения и множество значений, и так далее.
При обработке данных на ЭВМ такая классификация еще более важна. В любом алгоритмическом языке каждая константа, переменная, выражение или функция бывают определенного типа.
Любой тип данных определяет множество значений, которые может принимать переменная или выражение, а также возвращать операция или функция. Каждая операция или функция требует аргументов также фиксированного типа и выдает результат фиксированного типа.
- Тип определяет:
- — возможные значения переменных, констант, функций, выражений, принадлежащих к данному типу;
- — внутреннюю форму представления данных в ЭВМ;
- — операции и функции, которые могут выполняться над величинами, принадлежащими к данному типу.
Большинство языков программирования требуют явно описывать тип переменной, некоторые используют специальные символы для обозначения типа.
В большинстве языков программирования существуют следующие базовые типы данных: целый, вещественный, строковый, логический.
Тип | Описание | Диапазон значений |
нат | натуральные числа | от 1 ДО — ∞ |
цел | целые числа | от — ∞ до + ∞ |
действ | действительные числа, десятичные дроби | от — ∞ до + ∞ |
лит | литерный (строковый) | любые символы или группы символов |
лог | логический | истина, ложь |
Тип | Описание | Диапазон значений | Использование |
Integer | целые числа | от-32 768 до 32 767 | Var% |
Long | целые числа | от-2 147 483 648 до 2 147 483 647 | Var& |
Single | действительные числа |
от -3.4*1038 до -1.4*10-45 0 и от 1.4*10-45 до 3.4*1038 |
Var! |
Double | действительные числа |
от -1.8*10308 до -4.9*10-324 0 и от 4.9*10-324 до 1.8*10308 |
Var # |
String | набор символов | от 0 до приблизительно 2 миллиардов символов | Var$ |
Тип | Описание | Диапазон значений |
byte | короткое целое без знака | от 0 до 255 |
shortint | короткое целое со знаком | от-127 до 127 |
word | целое без знака | от 0 до 65536 |
integer | целое со знаком | от -32 768 до 32 767 |
longint | длинное целое | от -2 147 483 648 до 2 147 483 647 |
real | действительное |
от -3.4*1038 до -1.4*10-45 0 и от 1.4*10-45 до 3.4*1038 |
double | двойное действительное |
от -1.8*10308 до -4.9*10-324 0 и от 4.9*10-324 до 1.8*10308 |
char | символьное | один символ |
string | строковое | до 255 символов |
boolean | логическое | true (истина) и false (ложь) |
Существуют и более сложные типы данных, например массив, связанные списки, структуры и прочее. Массив — упорядоченное множество величин одного типа. Массивы описываются следующим образом:
- Алгоритмический язык:
- <тип даниых> таб <имя массива>[<нижняя граница>:<верхняя граница>]
- <тип данных> — один из базовых типов данных;
- <имя массива> — идентификатор в соответствии с правилами языка;
- <нижняя граница> — наименьший номер элемента в массиве;
- <верхняя граница> — наибольший номер элемента в массиве.
- Все элементы массива имеют свой номер, изменяющийся от <нижняя граница> до <верхняя граиица>.
- Бейсик:
- DIM <имя массива>(<верхняя граница>)
- Первый элемент массива в Бейсике всегда имеет номер 0. Тип элементов определяется именем массива.
- Паскаль:
- <имя массивам:array (<нижняя граница>:<верхняя граница>] of <тип данных>;
- Обращение к элементу массива производится по имени массива и номеру элемента:a (i) (Паскаль) или а(1) (Бейсик).
Массивы могут быть как одномерными (то есть иметь только одно измерение), так и многомерными. Двухмерный массив представляет собой таблицу, в которой первый номер обозначает ряд, а второй — столбец.