Вверх ↑
Этот топик читают: Гость
Ответов: 689
Рейтинг: 20
#1: 2006-06-27 16:07:16 ЛС | профиль | цитата
В Excel такая функция ОКРВВЕРХ - Возвращает результат округления с избытком до ближайшего числа, кратного точности. Например, если в значениях цен необходимо избежать рублей, а товар стоит 442 рубля, используйте формулу =ОКРВВЕРХ(442;10), чтобы округлить цену с точностью до 10 рублей.

Как сделать это в HiAsm? Обычное округление вот:
Add(MathParse,13603130,392,649)
{
DataCount=2
MathStr="round((%1 / %2), 0.1)"
}

Как округлить до кратного точности. Мне надо округлить с точностью до 1.

Заранее спасибо
карма: 0

0
Ответов: 9906
Рейтинг: 351
#2: 2006-06-27 17:41:35 ЛС | профиль | цитата
MathParse.html писал(а),
round(x[,y=1]) округление, round(x,y)=y*round(x/y)

карма: 9

0
Ответов: 2125
Рейтинг: 159
#3: 2006-06-27 19:23:18 ЛС | профиль | цитата
Galkov, Ему надо с избытком: y*round(x/y+0.49999999)
карма: 1

0
Ответов: 9906
Рейтинг: 351
#4: 2006-06-27 20:56:36 ЛС | профиль | цитата
а я подумал, что проблемы с "до единицы"...
карма: 9

0
Ответов: 689
Рейтинг: 20
#5: 2006-06-28 10:28:59 ЛС | профиль | цитата
Решил вот так:
code_43
карма: 0

0
файлы: 1code_43.txt [1.2KB] [814]
Ответов: 2125
Рейтинг: 159
#6: 2006-06-28 11:24:11 ЛС | профиль | цитата
А почему не так: code_44
Так гораздо экономнее И понятнее.

[size=-2]------ Добавлено в 11:24
И кстати, для не целых тоже годится. А если указать второе число 0.5 то будет "округлять" до 0.5; 1; 1.5; 2; 2.5; ...
карма: 1

0
файлы: 1code_44.txt [528B] [769]
Ответов: 9906
Рейтинг: 351
#7: 2006-06-28 12:21:03 ЛС | профиль | цитата
А я так:
Add(Edit,9539527,231,105)
{
Left=10
Top=10
Text="442"
}
Add(Edit,11391459,280,105)
{
Left=70
Top=10
Text="10"
}
Add(Button,1388768,175,182)
{
Left=130
Top=10
link(onClick,8929816:doCalc,[])
}
Add(MathParse,8929816,231,182)
{
MathStr="trunc(%1,%2)+sign(frac(%1,%2))*%2"
link(onResult,636800:doText,[])
link(X1,9539527:Text,[])
link(X2,11391459:Text,[(244,160)(286,160)])
}
Add(Label,636800,280,182)
{
Left=200
Top=10
Height=20
}
карма: 9

0
Ответов: 689
Рейтинг: 20
#8: 2006-06-28 13:25:11 ЛС | профиль | цитата
Спасибо всем, особенно Galkov
Тему можно закрыть (как это сделать самому, не нашел, наверное мне нельзя)
карма: 0

0
8
Сообщение
...
Прикрепленные файлы
(файлы не залиты)