Руководство разработчика

Стандартные типы

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


Целые числа

Целочисленный тип используется для представления чисел в диапазоне от -2147483648 до 2147483647. Значение по умолчанию для целых чисел 0 (ноль). Именем целочисленного типа является ключевое слово ЦЕЛОЕ:

ПЕРЕМ ЦЕЛОЕ: ц // 0

Целочисленный тип удобен для последовательной нумерации:

ц++ // 1

При арифметических операциях с целыми числами следует избегать переполнения. В результате переполнения можно получить неожиданное значение:

ц += 2147483647 // -2147483648

Сравнение целочисленных значений всегда точное (в отличие от сравнения вещественных чисел).

Целые и вещественные числа в большинстве случаев совместимы. Можно присваивать целые значения вещественным и наоборот (с округлением):

ц = 5.7    // 6
ц = 1e+012 // ошибка: вне допустимого диапазона

Целые и вещественные значения могут совместно участвовать в арифметических операциях и операциях сравнения.


Вещественные числа

Вещественный тип позволяет представить значения в диапазоне от -1.79769313486231570E+308 до -4.94065645841246544E-324 для отрицательных значений и от 4.94065645841246544E-324 до 1.79769313486231570E+308 для положительных значений. Представление чисел (даже целых) является приблизительным. В указанных пределах значения имеют 15 значащих цифр. Значение по умолчанию для вещественных чисел 0.0 (ноль). Именем вещественного типа является ключевое слово ЧИСЛО:

ПЕРЕМ ЧИСЛО: ч // 0.0

При арифметических операциях с вещественными числами можно столкнуться с переполнением. В результате переполнения могут возникать специальные значения: +бесконечность и -бесконечность.

Сравнение вещественных чисел должно производится с большой осторожностью. Приблизительное представление вещественных чисел открывает большой простор для неожиданных эффектов. Поэтому при сравнении вещественных чисел (как на равенство/неравенство, так и на больше/меньше) необходимо указывать требуемую точность сравнения. Точность сравнения проистекает из смысла числовой величины. Например, цены можно сравнивать с точностью до двух десятичных знаков. Для управления сравнением вещественных чисел используется оператор установки точности сравнения:

ПЕРЕМ ЧИСЛО: ч1 = 5.227
ПЕРЕМ ЧИСЛО: ч2 = 5.223
ТОЧНОСТЬ(2)
ПЕРЕМ равно = ч1 = ч2 // ДА

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

Вещественные и целые числа в большинстве случаев совместимы. Можно присваивать вещественные значения целым с автоматическим округлением и наоборот. Вещественные и целые значения могут совместно участвовать в арифметических операциях и операциях сравнения. Результатом смешанных арифметических операций является вещественное значение:

ПЕРЕМ ЧИСЛО: ч = 1.3
ПЕРЕМ ЧИСЛО: рез1 = 2 * ч // 2.6
ПЕРЕМ ЦЕЛОЕ: рез2 = 2 * ч // 3 - автоматическое округление до целого

Строки

Строковый тип используется для работы с символами и строками произвольной длины. Теоретический предел на длину строки составляет более двух миллиардов символов. Значения строкового типа поддерживают символы как латинского, так и нескольких национальных алфавитов в одной строке. Значение по умолчанию для строкового типа – "" (пустая строка). Именем строкового типа является ключевое слово СТРОКА:

ПЕРЕМ СТРОКА: стр // ""

Сравнение строковых значений чувствительно к регистру символов. Для значений строкового типа доступны специальные операции со строками.


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

Логический тип удобен при вычислениях сложных условий и установках различных признаков. У логического типа два значения: истинное и ложное. Для обозначения истинного значения используется ключевое слово ДА, а ложного – НЕТ. Значением по умочанию для логического типа является ложное значение. Именем логического типа является ключевое слово ЛОГИКА:

ПЕРЕМ ЛОГИКА: л // НЕТ

Значение логического типа является результатом всех операций сравнения. Логические операции позволяют использовать булеву арифметику для записи сложных логических выражений. Выполнение программы управляется выражением логического типа в операторе ЕСЛИ и цикле ПОКА.


Дата

Значения типа дата содержат информацию о дне, месяце и годе. Допустимый диапазон дат от 01.01.1901 до 31.12.2099. Значением по умолчанию для типа дата является 01.01.2001. Именем типа дата является ключевое слово ДАТА:

ПЕРЕМ ДАТА: д // 01.01.2001

Поддерживаются арифметические операции дат с целыми числами. Целочисленные значения соответствуют количеству дней. Например, разница дат дает количество дней их разделяющих.


Время

Значения типа "дата" содержат информацию о часах, минутах, секундах и сотых долях секунды. Допустимый диапазон значений от 00:00:00:00 до 23:59:59:99. Значением по умолчанию для типа время является 00:00:00:00 (полночь). Именем типа время является ключевое слово ВРЕМЯ:

ПЕРЕМ ВРЕМЯ: в // 00:00:00:00

Поддерживаются арифметические операции со значениями времени. Результатом таких операций является также время.


См. также: