- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
Функция ПолучитьДробнуюЧасть(Число)
Если Не ТипЗнч(Число) = Тип("Число") Тогда
Возврат 0;
КонецЕсли;
ЧислоСтрокой = Строка(Число);
Инд = 1;
Пока Истина Цикл
Символ = Сред(ЧислоСтрокой, Инд, 1);
Если Символ = "" Тогда
Возврат 0;
ИначеЕсли Символ = "," Тогда
Если Сред(ЧислоСтрокой, Инд + 1, 1) = "" Тогда
Возврат 0;
КонецЕсли;
Если Сред(ЧислоСтрокой, Инд + 2, 1) = "" Тогда
Возврат Число(Сред(ЧислоСтрокой, Инд + 1, 1));
КонецЕсли;
Если Сред(ЧислоСтрокой, Инд + 3, 1) = "" Тогда
Возврат Число(Сред(ЧислоСтрокой, Инд + 1, 1) + Сред(ЧислоСтрокой, Инд + 2, 1));
Иначе
Возврат Число(Сред(ЧислоСтрокой, Инд + 1, 1) + Сред(ЧислоСтрокой, Инд + 2, 1) + Сред(ЧислоСтрокой, Инд + 3, 1));
КонецЕсли;
КонецЕсли;
Инд = Инд + 1;
КонецЦикла;
КонецФункции
Еще один "анекдот" от неизвестного автора. Предыдущий здесь: http://govnokod.ru/16639
Jeyrico 07.11.2014 12:34 # 0
Анонимус 07.11.2014 18:40 # +2
А если без шуток, то товарищу надо в пятый класс (или когда там дроби проходят?)
---
ps: "ТипЗнч"
вонни!
HomoAlbus 10.11.2014 10:28 # 0
bormand 10.11.2014 10:45 # 0
Хмм... 1.4 -> 1, 1.5 -> 1, 1.6 -> 2? Я привильно понял? Или это floor так обозвали?
А какие еще режимы есть?
HomoAlbus 10.11.2014 10:49 # 0
HomoAlbus 10.11.2014 10:56 # 0
ДробнаяЧасть = ?(Окр(МоеЧисло)> МоеЧисло, МоеЧисло - Окр(МоеЧисло) + 1, МоеЧисло - Окр(МоеЧисло));
bormand 10.11.2014 11:05 # 0
HomoAlbus 10.11.2014 11:17 # 0
bormand 10.11.2014 11:51 # +1
guest 14.11.2014 12:44 # −2
школьнички такие школьнички. за похапе сотку хоть платят?
bormand 14.11.2014 13:45 # 0
Ну да, для этого у Окр есть второй параметр.
P.S. И что ты вообще хотел этим сказать?
guest 14.11.2014 13:59 # −2
bormand 14.11.2014 14:01 # 0
Походу ты неправильно понял, что такое "банковское округление".
На правах кэпа: Банковское округление (англ. banker's rounding) — округление для этого случая происходит к ближайшему чётному, то есть 2,5 → 2, 3,5 → 4.
guest 14.11.2014 15:53 # +1
bormand 14.11.2014 16:01 # 0
guest 14.11.2014 15:58 # +1
bormand 14.11.2014 16:02 # 0
guest 14.11.2014 16:07 # +1
<РежимОкругления> (необязательный)
Тип: РежимОкругления.
Определяет режим округления. Помимо системного перечисления допускается использование числового параметра: 0 - если при округлении 1.5 = 1; 1 - если при округлении 1.5 = 2.
Значение по умолчанию: Окр15как20
Анонимус 10.11.2014 16:56 # 0
Почему было не назвать ОкрВниз?
Вообще какие еще есть констранты в РежимОкругления?
bormand 10.11.2014 18:27 # 0
Потому что это не ОкрВниз. Это просто бессмысленное округление, округляющее 1.5 до 1.0, но 1.6 до 2.0.
15как10 и 15как20. И всё вроде как.
P.S. По 1с нормальная дока в инете вообще бывает? Или только покупка дисков и книжек, только хардкор?
HomoAlbus 10.11.2014 18:48 # 0
HomoAlbus 10.11.2014 18:48 # 0
guest 14.11.2014 12:57 # 0
guest 14.11.2014 13:06 # 0
guest 11.11.2014 11:55 # 0
guest 14.11.2014 11:02 # 0
bormand 14.11.2014 11:09 # 0
guest 14.11.2014 12:34 # 0
guest 14.11.2014 12:46 # 0
bormand 14.11.2014 13:50 # 0
Я в курсе, кэп.
Вот только твой способ один хуй толком не работает на отрицательных числах (для -3.2 вернет отрицательную дробную часть -0.2). Или так и задумывалось?
Odin 03.11.2018 17:33 # 0
За отрицательным не ко мне, а к ётунам.