Ладно, я разобрался. Это какая-то кривая версия сферы была. На работе кривая, дома нормальная. Я чуть с ума не сошел.
Ей плевать было на скобки, она все время считала что у меня hex.
Код
[FUNCTION f_math_2cathegory] //делит число на разряды
if strlen(<argn>) <= 3
return <eval <argn>>
endif
local.argn = <argn>
if (<local.argn> < 0)
local.mod = 1
local.argn = <eval(abs(<argn>))>
endif
local.lng = <eval(strlen(<dlocal.argn>))>
local.cut = 3
WHILE <local.lng> > 0
local.lng -= 3
if <local.lng> <= 0
local.cut = 3 + <local.lng>
local.lng = 0
endif
local.char = "<STRSUB <local.lng> <local.cut> <dlocal.argn>>"
if <local.emp> == 0
local.cat = "<local.char>"
local.emp = 1
else
local.cat = "<local.char>.<local.cat>"
endif
ENDFOR
if 0<local.mod>
local.cat = "-<local.cat>"
endif
return <local.cat>
Как написать раза в 3 меньше кода?