|
как из таблицы значений пропорционально отнять сумму? | ☑ | ||
---|---|---|---|---|
0
AlexToo
09.10.14
✎
11:43
|
Народ подскажите пожалуйста как из таблицы значений пропорционально отнять сумму? т.е. сначала я считаю долю по формуле:
стр / сумма (где стр-строка таблицы значений, сумма-сумма которую нужно отнять) а как дальше? |
|||
1
Волшебник
модератор
09.10.14
✎
11:44
|
циклом
|
|||
2
Krolik Bezobraznik
09.10.14
✎
11:44
|
Прошу прощения, как вы собираетесь строку делить на число?
|
|||
3
Ненавижу 1С
гуру
09.10.14
✎
11:46
|
формула у вас какая-то кривая
|
|||
4
AlexToo
09.10.14
✎
11:46
|
(2)ну я имел в виду то, сто стр-это строка таблицы значений ну в ней естественно есть нужное число от которого надо отнять пропорцию.
|
|||
5
AlexToo
09.10.14
✎
11:46
|
(1) ну и так всё этот ы цикле делаю, в принципе не понимаю как посчитать какую сумму нужно отнять от каждого числа
|
|||
6
HEKPOH
09.10.14
✎
11:47
|
находишь "вес" каждой строки (как пример, "вес" всех строк = 1). Потом умножаешь сумму на "вес" строки - это значение, которое нужно вычесть
|
|||
7
Бледно Золотистый
09.10.14
✎
11:47
|
(4) Сначала нужно посчитать доли для каждой строки, потом отнять сумма*доля. И не забыть про копейку.
|
|||
8
Krolik Bezobraznik
09.10.14
✎
11:48
|
(5) Еще вопрос. Пропорционально это как? в каждой строке необходимо из колонки (число) вычесть другое число, которое заранее известно и в процессе не меняется. Я верно понял?
|
|||
9
Ненавижу 1С
гуру
09.10.14
✎
11:51
|
// Вычитаемое - величина которую надо вычесть
ОстатокВычитаемого = Вычитаемое; ОстатокБазы = ТЗ.Итог("Величина"); Для каждого Стр из ТЗ Цикл К = Стр.Величина/ОстатокБазы; Доля = Окр(ОстатокВычитаемого*К,2); //если это деньги округляем ОстатокБазы = ОстатокБазы-Стр.Величина; Стр.Величина = Стр.Величина-Доля; ОстатокВычитаемого = ОстатокВычитаемого-Доля; КонецЦикла; |
|||
10
Krolik Bezobraznik
09.10.14
✎
11:52
|
(9) топикстартер сам не знает что ему надо вычесть а вы уже все решили за него =)
|
|||
11
AlexToo
09.10.14
✎
11:53
|
(8) не совсем, есть таблицы значений с числами и есть сумма, из каждой строки таблицы значений надо отнять какую-то часть от этой суммы, т.е. эту сумму надо разбить на пропорции и вычитать, к сожалению я не понимаю как разбить на пропорции.
|
|||
12
Krolik Bezobraznik
09.10.14
✎
11:55
|
(11) В таком случае мне кажется вам надо найти среднее число по колонке и его отнимать в цикле.
Для нахождения среднего числа посчитайте итог по колонке и разделите на количество строк. |
|||
13
Fish
09.10.14
✎
11:55
|
(11) "надо отнять какую-то часть от этой суммы" - а какую именно часть суммы надо отнять известно?
|
|||
14
AlexToo
09.10.14
✎
11:56
|
(13) нет не известно
|
|||
15
Chikko
09.10.14
✎
11:56
|
в УПП: ОбщегоНазначения.РаспределитьПропорционально(), передай свою сумму и массив значений, далее значения из полученного массива вычитай из строк соответствующих.
|
|||
16
AlexToo
09.10.14
✎
11:57
|
(15) понял спасибо!
|
|||
17
D3O
09.10.14
✎
11:57
|
(15) ну вообще в любой типовой. этот код давно в БСП
|
|||
18
Fish
09.10.14
✎
12:00
|
(17) А вот и не факт. У меня только РаспределитьСуммуПропорциональноКоэффициентам, туда надо ещё массив коэффициентов передавать.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |