![]() |
![]() |
![]() |
|
2 знака после запятой | ☑ | ||
---|---|---|---|---|
0
LivingStar
23.11.11
✎
14:46
|
подскажите как использовать функцию формат с округлением до 2х знаков после запятой с округлением до целых
|
|||
1
mikecool
23.11.11
✎
14:47
|
не понял, пример в студию
|
|||
2
zladenuw
23.11.11
✎
14:47
|
Окр(<Число>, <Разрядность>, <РежимОкругления>)
Параметры: <Число> (обязательный) Тип: Число. Исходное число. <Разрядность> (необязательный) Тип: Число. Определяет число знаков дробной части, до которых производится округление. Если параметр отрицательный, то число округляется до соответствующего разряда в целой части, начиная с младших разрядов. Параметр обязательный, если указан параметр <РежимОкругления>. Значение по умолчанию: 0 <РежимОкругления> (необязательный) Тип: РежимОкругления. Определяет режим округления. Помимо системного перечисления допускается использование числового параметра: 0 - если при округлении 1.5 = 1; 1 - если при округлении 1.5 = 2. Значение по умолчанию: Окр15как20 |
|||
3
mikecool
23.11.11
✎
14:48
|
как понять - до целых, но 2 знака после запятой?
100,00? |
|||
4
vde69
23.11.11
✎
14:48
|
правой кнопкой мыши, далее меню "Конструктор форматной строки" - там все элементарно
|
|||
5
vmv
23.11.11
✎
14:49
|
метод Формат() ничего не округляет - он форматирует
|
|||
6
LivingStar
23.11.11
✎
14:49
|
Формат(Результат.Количество/Результат.Коэффициент, "ЧЦ=10; ЧДЦ=2")
так сделал пока... |
|||
7
Maxus43
23.11.11
✎
14:50
|
(6) где округление до целых тут?
|
|||
8
Wobland
23.11.11
✎
14:50
|
(6) теперь закрой глаза и вообрази, что коэффициент у тебя превратился в 0
|
|||
9
vmv
23.11.11
✎
14:51
|
(6) грамотнее писать так
РезультатОкругления = МойМетодХитрогоОкругления(Результат.Количество, Результат.Коэффициент); РезультатОкругленияФ = Формат(РезультатОкругления, "ЧЦ=10; ЧДЦ=2"); |
|||
10
LivingStar
23.11.11
✎
14:52
|
40/30 = 1,3333333333
округляет 1,33, а надо 1,34 |
|||
11
LivingStar
23.11.11
✎
14:52
|
(3) с округлением в большую сторону....
|
|||
12
Масянька
23.11.11
✎
14:54
|
Еще больше стало не понятно....
В (0) до целых, в (11) до большего.... |
|||
13
vmv
23.11.11
✎
14:54
|
(11) начинай делать метод
МойМетодХитрогоОкругления(Количество, Результат, Рющки=Неопределено); |
|||
14
Maxus43
23.11.11
✎
14:54
|
в запросе короче кошерней, Выразить там есть
|
|||
15
Ткачев
23.11.11
✎
14:55
|
(5)Формат(100.125, "ЧЦ=10; ЧДЦ=2") = "100.13"
|
|||
16
vmv
23.11.11
✎
14:57
|
(15) по-барабану когда ситуация отличается от системных установок округления, так что проще считать, что он ничего не округляет
|
|||
17
Масянька
23.11.11
✎
14:57
|
Автор, наверное, хочет: Окр(1.1+0.5, 1)
|
|||
18
Ненавижу 1С
гуру
23.11.11
✎
14:58
|
Окр(Значение,2)+(Значение<>Окр(Значение,2))/100
|
|||
19
Maxus43
23.11.11
✎
15:00
|
началось)
|
|||
20
Масянька
23.11.11
✎
15:01
|
Автор куда-то пропал.....
|
|||
21
Aprobator
23.11.11
✎
15:02
|
Формат(Цел(ТвоеЧисло) + 1, СтрокаФормата);
|
|||
22
Aprobator
23.11.11
✎
15:03
|
(20) звезданулся небось )
|
|||
23
Aprobator
23.11.11
✎
15:03
|
(21) неверно однако - поспешил.
|
|||
24
LivingStar
23.11.11
✎
19:31
|
спасибо, завтра буду пробовать!
|
|||
25
LivingStar
24.11.11
✎
06:37
|
(21)
40/30=1,3333333333 Формат(Цел(Результат.Количество/Результат.Коэффициент) + 1,"ЧЦ=10; ЧДЦ=2") = "2,00" а надо 1,34 (18) Окр(Результат.Количество/Результат.Коэффициент,2)+(Результат.Количество/Результат.Коэффициент<>Окр(Результат.Количество/Результат.Коэффициент,2))/100 это возвратило 1,34 !!! |
|||
26
Ткачев
24.11.11
✎
07:18
|
(25)Формат(Результат.Количество/Результат.Коэффициент + 0.005, "ЧЦ=10; ЧДЦ=2") = "1,34"
Или Окр(Результат.Количество/Результат.Коэффициент + 0.005, 2) = 1.34 |
|||
27
Ненавижу 1С
гуру
24.11.11
✎
08:33
|
(26) они 1 превратят в 1.01
|
|||
28
Ткачев
24.11.11
✎
09:02
|
(27)Точно, целые как то не проверил, с +0.004 получилось вроде нормально.
|
|||
29
Ненавижу 1С
гуру
24.11.11
✎
09:06
|
(28) 0.0001 превратит в 0, а надо в 0.01 ))
|
|||
30
Ткачев
24.11.11
✎
09:27
|
(29)Так у тебя и 0.000000000000000001 наверно превратит в 0.01, 0.004999... девятки это количество знаков после запятой для числа которые будут считаться, иначе 0.
|
|||
31
Ненавижу 1С
гуру
24.11.11
✎
09:32
|
(30) именно, просто хотел сказать, что это метод тупиковый
|
|||
32
Snorkler
24.11.11
✎
09:39
|
(0) Если я правильно понял, что нужно, то
ЧислоПослеОбработки = Окр(ЧислоДоОбработки + 0.0049, 2, 1); рулит… |
|||
33
Aprobator
24.11.11
✎
09:44
|
|
|||
34
Aprobator
24.11.11
✎
09:44
|
ТвоеЧислоДляУсловия = ЧислоДляУсловия
|
|||
35
Aprobator
24.11.11
✎
09:46
|
И вместо Строка после иначе можно юзать формат.
|
|||
36
Snorkler
24.11.11
✎
09:51
|
(32)+ Таки да… Вопрос про формат же… Тогда так:
ПрафильныйФормат = Формат(Окр(ЧислоДоОбработки + 0.0049, 2, 1), "ЧДЦ=2"); |
|||
37
Aprobator
24.11.11
✎
10:01
|
(36) все зависит от того какое число после запятой хочет контролировать ТС, например: Окр(1.0001 + 0.0049, 2, 1) = 1,01
|
|||
38
Aprobator
24.11.11
✎
10:03
|
(37) кстати, тады (33) тоже не катит.
|
|||
39
Snorkler
24.11.11
✎
10:06
|
(37) Судя по (10) именно это и надо…
|
|||
40
Aprobator
24.11.11
✎
10:08
|
(39) по (10) этого точно не скажешь.
Вот если бы ТС ответил, а что должно быть из 1.0001 - 1.00 или 1.01 тогда да. В любом случае в (36) интересное решение. По крайней мере я до него не допер. |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |