- •Часть I
- •1.1 Простейшее консольное приложение. Основные понятия
- •Задачи.
- •1.2 Простые типы
- •Целые типы.
- •Задачи.
- •Символьные типы.
- •Логические типы
- •Перечислимый тип
- •Задачи.
- •Вещественные типы
- •Тип дата-время
- •1.3 Операторы Оператор присваивания
- •Составной оператор
- •Условный оператор if
- •Задачи.
- •Оператор выбора case
- •Задачи.
- •Операторы цикла
- •Задачи.
- •Задачи.
- •Задачи.
- •1.4 Процедуры и функции.
- •Процедуры.
- •Функции.
- •Вызов подпрограмм.
- •Локализация имён.
- •Параметры.
- •Задачи.
- •Перегрузка функций.
- •Процедурные типы.
- •1.5 Динамическая память и указатели
- •1.6 Массивы
- •Статические массивы
- •Задачи.
- •Задачи.
- •Задачи.
- •Задачи.
- •Динамические массивы
- •Параметры-массивы
- •1.7 Строки Строковые типы
- •Стандартные подпрограммы для строк.
- •Строковые выражения
- •Задачи.
- •Преобразование строк в числовые типы и обратно.
- •1.8 Множества
- •Задачи.
- •1.9 Записи
- •Задачи.
- •Литература.
- •Оглавление
Вещественные типы
Вещественные типы не являются порядковыми. Поскольку данные в компьютере хранятся в виде двоичных кодов, то действительные числа, в отличие от целых, представляются приближённо, хотя и с большой степенью точности. В Delphi 5 имеется 7 вещественных типов:
-
Тип
Диапазон значений
Размер (в байтах)
real
5.0*10–324 .. 1.7*10308
8
real48
2.9*10–39 .. 1.7*1038
6
single
1.5*10–45 .. 3.4*1038
4
double
5.0*10–324 .. 1.7*10308
8
extended
3.6*10–4951 .. 1.1*104932
10
comp
–263 +1 .. 263–1
8
currency
–922337203685477.5808 ..
922337203685477.5807
8
Наибольшая производительность процессора достигается при использовании типа real. В Delphi 5 ему эквивалентен тип double.
При условии, что хотя бы один из операндов вещественного типа, операции * , / , + , – дают вещественный результат. К данным вещественного типа применимы все вышеперечисленные стандартные математические функции.
Вещественные значения могут изображаться в форме с фиксированной точкой ( например, 7.32 456.721 0.015), а также в форме с плавающей точкой, т.е. в виде <мантисса>Е<порядок>. Числа 7.32 может быть записано в форме с плавающей точкой следующим образом:
73.2 E -0001 7.32 Е +0000 0.732 Е +0001
Точка в мантиссе плавает – отсюда название. Вещественные числа выводятся на экран в форме с плавающей точкой, если не используется вывод с форматом.
Тип дата-время
Тип дата-время предназначен для одновременного хранения даты и времени. Определяется этот тип с помощью стандартного идентификатора TDateTime. Значения этого типа представляют собой 8-ми байтовые вещественные числа, при этом целая часть позволяет определить дату, а дробная – время. При вводе и выводе дат и времени можно использовать следующие стандартные функции для получения данных в привычном для нас виде:
StrToDateTime – преобразовывает строку в величину типа TDateTime;
StrToTime – преобразовывает строку в величину типа TDateTime;
DateTimeToStr – преобразовывает величину типа TDateTime в строку;
DayOfWeek – возвращает номер дня недели для заданной даты.
Пример 7. Определить дату и день недели, которые наступят через 10000 дней, 13 часов, 15 минут, 6 секунд после заданного момента.
В качестве заданного момента времени возьмём 25 апреля 1973 года, 23 часа 35 минут, 22 секунды.
var d : TDateTime; k:integer;
begin
d:=StrToDateTime('25.04.1973 23:35:22');
d:=d + StrToTime('13:15:6') + 10000;
writeln(DateTimeToStr(d));
k:=DayOfWeek(d);
writeln(k); readln
end.
После запуска программы на экран будет выведено:
11.09.2000 12:50:28
2
