Округление

  • Автор темы Автор темы Antigo
  • Дата начала Дата начала
A

Antigo

Всем привет!
Вопрос простой, как мне на лотусскрипте округлить число 9.35 до близжайшего большего целого, то есть до 10?
 
If places is negative, the number is rounded to places digits to the left of the decimal point
Второй параметр отвечает за позицию до которой надо округлять.
Если позиция > 0, то округление в позициях дробных частей.
Если позиция < 0, то округление в позициях целых частей.
Примерах это видно:
' Round to one decimal place.
Print Round(4.23, 1) ' Prints 4.2
Print Round(4.45, 1) ' Prints 4.4
' Round to the nearest hundred.
Print Round(153.33, -2) ' Prints 200
 
еще вариант:
Код:
	k = 12.752
k = (k\1)
Print "*" & k
Округление в большую сторон. вернет 13
 
я бы посмотрел в каких случаях последний метод может дать сбой.
Это целочисленное деление, для округления оно еще может и подойдет, а вот глобально надо смотреть.
 
э хакеры не усложняйте ... CInt илм Fix поможет вам для забирания целой части, а функцию округления лучше написать свою - спросите у гугла
 
есть готовая в java, через бридж числовые значения передаются
как заюзать бридж - стопицот раз обсуждалось
 
Подниму немного тему. Ткните носом, плз. в готовую функцию на LS округления до упаковки. Например, 1 (100) = 100. 45 (200)=200. 49 (50)=50. 4444 (20)= 4460
Нужен аналог ОКРВВЕРХ в excel на скрипте.
 
Последнее редактирование:
n - кол-во
q - кратность
rnd(n/q + 0.5)*q
---------------------
ex:
4444/20 = 222.2
округляем вверх rnd(222.2+0.5) = 223
итог 223*20 = 4460
---------------------
ЗЫ или может быть +0.49999 (как в собаках) не помню уже особенностей rnd)
 
Последнее редактирование:
  • Нравится
Реакции: NetWood
Да, спасибо вот так работает Round( (qty/pack + 0.49999),0)*pack.

И в екселе точно так же
1550010184058.png
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!