Добавлен
Делаю конвертацию:
local real R = 20.0* 1.3
call QuestMessageBJ( GetPlayersAll(), bj_QUESTMESSAGE_UPDATED, R2S(R))
call QuestMessageBJ( GetPlayersAll(), bj_QUESTMESSAGE_UPDATED, I2S(R2I(R)))
В результате на экране: 26.000 и 25. Вопрос: Почему R2I возвращает не 26, как должно было бы быть по логике?
ScorpioT1000:
пожалуйста, читайте статьи xgm.ru/p/wc3/w3_data_types
я понимаю, что можно задать ошибочный вопрос
но когда люди дают ошибочный ответ ... это просто расстраивает.
Перечитал статью вдоль и поперек, ответа на свой вопрос так и не нашел. (И как вопрос может быть ошибочным?=)) Интересно...)

это к близардам а вернее к их рукам
и бж убери
если вместо 1,3 и 20 использовать 1,1 и 10 то ответ 10 выдаёт
вобще если умножаешь дробь на круглое число и конвертируеш в интежер то интежер становится на 1 меньше реала
прибавляй единичку или конвертируй реал в строку потом строку в интежер
`
ОЖИДАНИЕ РЕКЛАМЫ...
28
это к близардам а вернее к их рукам
и бж убери
если вместо 1,3 и 20 использовать 1,1 и 10 то ответ 10 выдаёт
вобще если умножаешь дробь на круглое число и конвертируеш в интежер то интежер становится на 1 меньше реала
прибавляй единичку или конвертируй реал в строку потом строку в интежер
Принятый ответ
2
Так главное, если переменной присвоить целое значение напрямую, к примеру:
local real R = 26.0,
то проблем никаких не будет. Думал, может я вычисления как-то не так делаю...
И чего вы все так на BJ функции агритесь, очевидно же, что они здесь только для теста=)
28
я просто на бж указал
обьясняю при умножение дроби на круглое число происходит баг
call QuestMessageBJ( GetPlayersAll(), bj_QUESTMESSAGE_UPDATED, I2S(S2I(I2R(R))))
так вот делай
ой вместо I2R используйR2I
или проверку if R!=I2R(R2I(R)) then
2
nvc123:
ой вместо I2R используй R2I
R2S ты хотел сказать?))
Вообщем суть я уловил, хоть и геморно, но работает, спасибо за совет))
8
особенность реала или числа double - это баг и криворукость близов
ура товарищи
28
закрывай вопрос а то бесит когда вопросы на которые дали ответы весят как без ответа
38
пожалуйста, читайте статьи xgm.ru/p/wc3/w3_data_types
я понимаю, что можно задать ошибочный вопрос
но когда люди дают ошибочный ответ ... это просто расстраивает.
38
Близзарды тут не при чём, ещё раз намекаю на ВАШУ криворукость.
Чтобы оставить комментарий, пожалуйста, войдите на сайт.