| Новости | FAQ | Авторы | Документация | В действии | Библиотека |
| Инструменты | Полезные ссылки | Хостинги | Скачать | Примеры | Форум |
mashi 10.02.2006 13:49
просто интересен сам факт - при положительных ответах форматирование вывода не требуется, а при отрицательном - требуется.Форматирование требуется при любом выводе данных типа double, т.к. double сеодержит обычно 15 значащих цыфр и если выводить просто так, то будет произведено автоматическое форматирование (см. в доке)
$a(12.3456789)
$b(-12.3456789)
a = $a ^rem{ # 12.3457}
<br />
a = ^a.format[%.15f] ^rem{ # 12.345678899999999}
<br />
b = $b ^rem{ # -12}
<br />
b = ^b.format[%.15f] ^rem{ # -12.345678899999999}
<br />
# даже если вы явно задаете, казалось бы, целое число
$c(5)
# оно все равно содержит 15 значащих цыфр
c = ^c.format[%.15f] ^rem{ # 5.000000000000000}
<br />
# и принадлежит классу double (не int)
^if($c is "double"){Yes. "^$c" is double.}
<br />
# Класс int появляется только в этом случае:
$c(^c.int[])
^if($c is "int"){Yes. "^$c" is int.}