Данные и их типы. Простые типы данных

Работу выполняют:

  • Ордякова Надя 11»Б»
  • Чернышёва Саша 11»Б»

1.Дерево целей проекта:

1.0 Данные и их типы
1.1 Простые типы данных

2.Структура продукта:

2.0 Работа в wiki
2.1 Презентация

3.Структура разбиения работ:

3.0 Сбор информации (1 неделя)
3.1 Сбор ссылок  (1 неделя)    
3.2 Размещение информации на сайте (2 недели)
3.3 Структуирование информации (2 недели)
3.4 Отформатирование информации (2 недели)
3.5 Создание презентации (1 неделя)
3.6 Подготовка к выступлению (2 недели)

4.Распределение обязаностей:

 
4.0 Чернышёва Саша-"Данные и их типы"
4.1 Ордякова Надя-"Простые тиы данных"

Простые типы данных

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

  • целочисленные
  • вещественные
  • логические
  • строковые (символьные)

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

Пример:

Целочисленный тип - содержит числовые значения, целые числа. Числа упорядочены по возрастанию: …, -2, -1, 0, 1, 2, 3, … Логический тип - содержит всего 2 значения - True, False, которые тоже упорядочены: False, True (следует из соответствия False - 0, True - 1). Символьный тип - символы кодовой таблицы. Поскольку каждому символу соответствует свой код, то символы расположены в порядке увеличения кода. К примеру, буквы латинского алфавита A, B, C, D, … идут в кодовой таблице именно так, т.к. чем дальше от начала алфавита, тем больший код имеет буква. То же самое касается и арабских чисел в кодовой таблице - они идут по порядку: 0, 1, 2, …, 8, 9. Это позволяет делать такие сравнения, как, например 'A' < 'Z' (это истинно).

Из того, что перечисленных типы данных упорядочены, следует, что все значения образуют конечную последовательность. Это соответствует нашим представлениям о типах данных - все они имеют свои ограничения. К примеру, нет числового типа данных, который позволил бы хранить сколь угодно большое число. «Большие» типы есть, но «число» «бесконечность» они хранить не могут.

Функции и процедуры для порядковых типов данных

Существует несколько полезных функций и процедур, без использования которых, порой, сложно оперировать порядковыми типами данных:

  • Pred() - функция возвращает предыдущее значение для выражения, указанного в качестве единственного аргумента.

Примеры: Pred(5) = 4, Pred('E') = 'D', Pred(True) = False.

  • Succ() - функция, обратная для Pred() - возвращает следующее значение.

Примеры: Succ(5) = 6, Succ('E') = 'F', Succ(False) = True.

  • Ord() - возвращает порядковый номер значения в списке значений типа данных. С этой функцией мы уже встречались при работе со строками - с её помощью мы узнавали код символа.

Примеры: Ord('A') = 65, Ord(True) = 1.

  • Low() - возвращает минимальное значение указанного типа данных.

Примеры: Low(Byte) = 0, Low(Boolean) = False, Low(Char) = #0 (символ с кодом 0).

  • High() - возвращает максимальное значение указанного типа данных.

Примеры: High(Byte) = 255, High(Boolean) = True, High(Char) = #255 (в русской локали это символ «я»).

  • Dec() - уменьшает значение на единицу.
  • Inc() - увеличивает значение на единицу.

Пользовательские типы данных На основе порядковых типов данных программист может создать свои собственные типы - перечислимые и интервальные.

Целочисленные типы

Как следует из названия, целочисленные типы позволяют хранить целые числа. Среди них есть типы, которые хранят числа со знаком (т.е. положительные или отрицательные), а есть и такие, которые хранят только положительные. Чем большее количество значений может содержать тип, тем больше памяти он занимает. Рассмотрим целочисленные типы данных.

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

  • Byte - значения 0..255 - занимает в памяти 1 байт.
  • Word - значения 0..65535 - 2 байта.
  • LongWord - значения 0..4294967295 - 4 байта.

Теперь типы со знаком (отрицательные числа записываются со знаком минус »-» впереди, неотрицательные могут записываться как со знаком »+», так и без него):

  • ShortInt - значения -128..127 - 1 байт.
  • SmallInt - значения -32768..32767 - 2 байта.
  • LongInt - значения -2147483648..2147483647 - 4 байта.
  • Int64 - значения -2^53..2^53-1 - 8 байт.

Существуют также 2 общих типа, которые находят своё отражение в вышеперечисленных. Рекомендуется использовать именно эти типы, т.к. компилятор «заточен» под них и создаёт более быстрый и эффективный код:

  • Integer - значения -2147483648..2147483647 - 4 байта.
  • Cardinal - значения 0..4294967295 - 4 байта.

Следует отметить, что целые числа могут быть представлены не только в десятичной, но и в шестнадцатеричной системе счисления, т.е. в виде $xxxxxxxx, где x - один из символов 0, 1, …, 8, 9, A, B, …, E, F. К примеру, все цвета (точнее, их коды) представляются именно в виде шестнадцатеричных чисел.

Логические типы

логические выражения и с логические типы - это тип Boolean, принимающий значения True и False. Помимо Boolean существуют следующие логические типы: ByteBool, WordBool и LongBool. Однако последние введены лишь для обспечения совместимости с другими языками и системами программирования. Использовать рекомендуется только тип Boolean. Логическое значение в памяти занимает 1 байт. На самом деле, конечно, достаточно и одного бита, но оперировать ячейками меньше байта, мы, к сожалению, не можем.

Строковые (Символьные) типы

Символьные типы обеспечивают хранение отдельных символов. Основной тип данных - Char, который содержит символы с кодами 0..255. Существуют ещё типы AnsiChar и WideChar. Тип AnsiChar эквивалентен типу Char, т.е. по сути это один и тот же тип. Занимает в памяти 1 байт. Для кодирования символов используется код ANSI (American National Standards Institute). Тип WideChar кодируется международным кодом Unicode и занимает в памяти 2 байта. Таблица Unicode включает символы практически всех языков мира.

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

Из названия следует, что эти типы используются для хранения вещественных, т.е. действительных чисел. Отличаются они границами допустимых значений и точностью, т.е. числом цифр после запятой. Вот эти типы:

  • Real (он же Double) - значения от 5.0×10^-324 до 1.7×10^308, точность - 15-16 цифр, занимает в памяти 8 байт.
  • Real48 - значения от 2.9×10^-39 до 1.7×10^38, точность - 11-12 цифр, 6 байт памяти.
  • Single - значения от 1.7×10^-45 до 3.4×10^38, точность - 7-8 цифр, 4 байта.
  • Extended - от 3.6×10^-4951 до 1.1×10^4932, точность - 19-20 цифр, 10 байт памяти.
  • Comp - от -2×10^63+1 до 2×10^63-1, точность - 19-20 цифр, 8 байт.
  • Currency - от -922337203685477.5808 до 922337203685477.5807, точность - 19-20 цифр, в памяти занимает 8 байт.

Как и в случае с целыми числами, перед вещественными числами может стоять знак »+» или »-».

Существует 2 формы записи вещественных чисел - с фиксированной точкой и с плавающей.

Запись с фиксированной точкой представляет собой обычную запись, в которой целая и дробная части отделены друг от друга точкой/запятой.

Запись с плавающей точкой подразумевает запись порядка числа, который отделяется от самого числа буквой «E» (запись «e» тоже допустима). Например, запись 1.5e2 означает число 1.5 с порядком +2, т.е. это 1.5×10^2 = 150.

Типы Comp и Currency были введены специально для произведения точных денежных расчётов. При этом, тип Comp, как видно из значений границ диапазона, хранит целые числа, поэтому при задании чисел с дробной частью они автоматически преобразуются в ближайшее целое число.

 
tema/dannye_i_ix_tipy._prostye_tipy_dannyx.txt · Последние изменения: 2009/02/12 11:24 От nadja
 
За исключением случаев, когда указано иное, содержимое этой вики предоставляется на условиях следующей лицензии:CC Attribution-Noncommercial-Share Alike 3.0 Unported
Recent changes RSS feed Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki