2.3 - Числа

Числовой тип представлен реальными числами (с плавающей точкой двойной точности). В Lua нет целочисленного типа, так как в них нет необходимости. Существует широкораспространенное заблуждение относительно ошибок в вычислениях с плавающей точкой и некоторые люди уверены, что даже простой инкримент может привести к фатальным последствиям при использовании чисел с плавающей точкой. На самом же деле, когда вы используете числа с двойной точностью для представления целочисленных значений, нет проблем с ошибками округления (за исключением чисел блолее 100,000,000,000,000). В частности, в Lua число может представлять длинное целое без проблем округления. Более того,большинство современных процессоров выполняют операции с плавающей тчкой как минимум не медленнее, чем операции с целыми числами.

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

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

    4     0.4     4.57e-3     0.3e12     5e+20

Hosted by uCoz