Название: Удаление дробной части числа Отправлено: Amigo от 18 Декабря 2008, 10:41:53 Всем привет. Ктонить подскажет как можно выполнить сие действие? Например, есть число 34,56 то в итоге должно остаться 34.
На языке было бы чтото вроде double x = 34.56; int y; y = x; а тут хз. Может нода какаято есть, на вход которой идет дробная часть, на выходе целая? Типа VALUE OPERATOR, но там только text to integer, а мне нужно double to integer. Название: Re: Удаление дробной части числа Отправлено: Viik от 18 Декабря 2008, 11:24:33 В ченеле Expression value есть функция FLOOR(A), она возвращает целую часть числа.
Название: Re: Удаление дробной части числа Отправлено: Amigo от 18 Декабря 2008, 12:01:14 спасибо!
Название: Re: Удаление дробной части числа Отправлено: Const_47 от 18 Декабря 2008, 21:26:39 А что делать если мне нужна фиксированная точность?
Ну например три цифры после точки? То есть, что бы даже вот такое 1 выглядело вот так 1.000 Название: Re: Удаление дробной части числа Отправлено: Viik от 18 Декабря 2008, 23:58:42 тогда делаем вот так:
A - исходное число X - искомое число Variant 1: B = FLOOR(A*1000) X = B/1000 Отрезаеться все кроме 3-ч чисел дробной части. Variant 2: B = ROUND(A*1000) X = B/1000; Здесь значение округляеться до ближайшего. Variant 3: Там еще есть битовые операции, я с ними не разбирался но поидее можно ограничить точность с помощью них. Название: Re: Удаление дробной части числа Отправлено: Const_47 от 19 Декабря 2008, 22:30:50 Тут я скорее не так задал вопрос, мне фиксированная точность не нужна для просчетов, а элементарно вывести результат на экран с такой точностю.
0.010*1000 = 10 floor(10) = 10 10/1000 = 0.010 из чего Квест мне 100% сделает 0.01 Битовые операции тут не помогут. Есть конешно вариант, что-то типа if x < 0.011 но это через жо.. Тут бы больше подошло что то вроде флагов форматирования потока. Пока смотрю Lua String. |