Страница: 1 |
Страница: 1 |
Вопрос: округление до сотых
Добавлено: 04.02.07 12:56
Автор вопроса:
Inna
Может кто знает, есть ли в - VB6 готовая функция, которая округляет число до сотых, до тысячных и.т.д?
Скажем у меня есть число: 1,724,279.62
После округления до сотых получаем: 1,724,300
Ответы
Всего ответов: 6
Номер ответа: 1
Автор ответа: Алексей
black admin
ICQ: 261779681
Вопросов: 87
Ответов: 633
Web-сайт:
Профиль | | #1
Добавлено: 04.02.07 13:11
http://kbyte.ru/Refbooks/ShowGroup.aspx?id=1
а именно
http://kbyte.ru/Refbooks/Show.aspx?id=128
Номер ответа: 2
Автор ответа: Inna
Вопросов: 9
Ответов: 3
Профиль | | #2
Добавлено: 04.02.07 13:43
Во-первых, спасибо за ссылку. Очень удобно когда все функции сгруппированы.
Проблема в том, что Функция Round округляет указанное число с заданным количеством десятичных знаков, т.е. знаков после запятой.
А мне требуется округлить перед запятой.
Например: число 1 724 270 округлить до 1 724 300
Скорее всего придеться самой написать подходящую рутину
Спасибо
Номер ответа: 3
Автор ответа: Алексей
black admin
ICQ: 261779681
Вопросов: 87
Ответов: 633
Web-сайт:
Профиль | | #3
Добавлено: 04.02.07 13:54
не знаю, пойдет или нет:
MsgBox nasRound(1724270, 100)
End Sub
Public Function nasRound(Num As Double, d As Integer) As Double
Dim a As Double
Dim r As Double
Dim b As Double
a = Num Mod d
If a > (d / 2) Then
b = d - a
r = Num + b
Else
r = Num - a
End If
nasRound = r
End Function
Номер ответа: 4
Автор ответа: Fever
Вопросов: 60
Ответов: 808
Профиль | | #4
Добавлено: 04.02.07 15:56
То есть автор хочет округлять не до сотых, а до СОТЕН. Тогда
answer = (num \ 100) * 100
Или любое другое число вместо 100 чтоб до него округлить. Только меняй оба раза.
Номер ответа: 5
Автор ответа: Inna
Вопросов: 9
Ответов: 3
Профиль | | #5
Добавлено: 05.02.07 15:31
Спасибо всем
P.S. Я очень мало общаюсь на рус.яз. Поэтому где-то и появляются такие маленькие оплошности
Номер ответа: 6
Автор ответа: Fever
Вопросов: 60
Ответов: 808
Профиль | | #6
Добавлено: 05.02.07 19:35