Author Topic: округление  (Read 364 times)

Tags:
  • All members
  • Posts: 78
  • Karma: +0/-0
  • Gender: Male
округление
« on: Tue, 11 February, 2020, 14:17 »
Есть ли функция или возможность округлять значения вычислений? ни как не могу найти такой "кнопки" ни на форуме ни в мануале. только пару тем что этой возможности раньше небыло. а как сейчас?

  • All members
  • Posts: 78
  • Karma: +0/-0
  • Gender: Male
Re: округление
« Reply #1 on: Wed, 12 February, 2020, 15:46 »
Пока отсутствует функция программно округлить выложу свой вариант решения данной проблемы. Может кому то пригодится.

IF((INTEGER(X*1000)/10-INTEGER(X*100))>0.44444444, (INTEGER(X*100)/100)+0.01, INTEGER(X*100)/100) 

где X - округляемая переменная 


  • All members
  • Posts: 28
  • Karma: +0/-0
Re: округление
« Reply #2 on: Thu, 13 February, 2020, 07:11 »
Если хочешь округлять кэф. то:
Выражение r_ticks(original_price, 0) возвращает original_price, округленное до ближайшего корректного значения коэффициента на основании размера тика. Например, если вы пишете r_ticks(10.17, 0), программа вернет 10.0, если напишете r_ticks(2.57, 0), вернет 2.58 и так далее.

  • All members
  • Posts: 78
  • Karma: +0/-0
  • Gender: Male
Re: округление
« Reply #3 on: Thu, 13 February, 2020, 08:59 »
Мой вопрос касался округления до сотых после запятой, то есть самой ставки и результата (кф*размер ставки). при использовании размера ставки % от банка или от своей переменной на каждом действии образоваться может лишний 1 цент. потом это превращается в неплохое отклонение на дистанции. решить вопрос получилось только представленным выше методом.