Хитрое распределение коэффициента по базе (нужна помощь в математике)

1. belas 6 15.01.16 10:04 Сейчас в теме
Прошу помочь, кто знает в математике.

есть общая сумма например 37000, она состоит из трех составляющих:
10000
22000
5000.

Общую сумму увеличили на 1,2 . Получили 37000*1,2 = 44400.
Нужно теперь этот коэффициент (1,2 - условно) распределить по составляющим, но по определенной базе, например:
80
110
30

т.е. для второго составляющего (22000) коэф-т будет самый максимальный, например 1,3, а для третьей составляющей (5000) - самый маленький к примеру 0,8, так как база соответственно 110 и 30.

Вернее даже не 1,2 распределить. А получить какие-то коэф-ты, которые соизмеримы с базой, чтобы перемножив эти коэф-ты на соответсвующие составляющие и потом сложив то что получится у меня вышло 44400

У меня всякими разными способами распределения коэф-тов потом общая сумма 44400 никак не получается.
Распределить нужно именно коэф-ты, к примеру если распределить разницу между начальной суммой и конечной , в нашем случае 7000, то общая сумма сойдется а вот сами коэф-ты в этом случае будут распределены не соразмерно базе.

Всю голову сломал....
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
7. nikolayD 5 15.01.16 10:44 Сейчас в теме
(1) belas,
Прошу помочь, кто знает в математике.
Получили 37000*1,2 = 44000.
37000*1,2 = 44400.
...
8. nikolayD 5 15.01.16 10:51 Сейчас в теме
(1) belas,
Прошу помочь, кто знает в математике.
Получили 37000*1,2 = 44000.
37000*1,2 = 44400.
<Сколько кинуть в корзинку ячейки>=<База> х (<коэффициент>-1) / <сумма баз распределения всех ячеек> х <База распределения данной ячейки>
<База> =37000
(<коэффициент>-1) =1.2-1=0.2
<сумма баз распределения всех ячеек> = 80+110+30= 220
<База распределения данной ячейки> = 80
37000*0,2/220/80= 2690,91
Будет после распределения 10000+2690,91=12690,91
Во второй 22000+3700=25700
В третьей 5000+1009,09=6009,09
Проверка 2690,91+3700+1009,09=7400

Если я правильно условия понял.
adva; user_2010; +2 Ответить
13. belas 6 15.01.16 11:32 Сейчас в теме
(8) nikolayD,
Нет, не правильно условие понял или я не могу правильно объяснить....
15. nikolayD 5 15.01.16 11:37 Сейчас в теме
(13) belas,
Нет, не правильно условие понял или я не могу правильно объяснить....
Что такое
Нужно теперь этот коэффициент (1,2) распределить по составляющим, но по определенной базе, например:
80
110
30
???

Если нужен коэфициент, как циферка, что бы его кому-то там показать, то формула коэффициента будет:
(<Сейчас в ячейке>+<База> х (<коэффициент>-1) / <сумма баз распределения всех ячеек> х <База распределения данной ячейки>) / <Сейчас в ячейке>
или проще
1+<База> х (<коэффициент>-1) / <сумма баз распределения всех ячеек> х <База распределения данной ячейки> / <Сейчас в ячейке>
Тут будет как раз (5) belas,
16. belas 6 15.01.16 11:40 Сейчас в теме
(15) nikolayD,

Вернее даже не 1,2 распределить. А получить какие-то коэф-ты, которые соизмеримы с базой, чтобы перемножив эти коэф-ты на соответсвующие составляющие и потом сложив то что получится у меня вышло 44400

<Сейчас в ячейке> - величина не известная. Известна будет только когда я получу коэф-ты.
17. nikolayD 5 15.01.16 11:41 Сейчас в теме
(16) belas, проверьте по последней формуле, должно всё получиться.

<Сейчас в ячейке> - это то, что Вы уже написали, т.е. 10000 в первой, неизвестных я в формуле не использую.
18. Xershi 1535 15.01.16 11:42 Сейчас в теме
(16) belas, так в чем проблема? Составь условие пропорций и остаток кидай куда тебе нужно!
19. belas 6 15.01.16 11:52 Сейчас в теме
21. Xershi 1535 15.01.16 12:05 Сейчас в теме
(19) belas, нераспределенный остаток. Какой же еще)
25. belas 6 18.01.16 04:15 Сейчас в теме
(21) Xershi,
Мне сумму не нужно перераспределять.
29. Xershi 1535 18.01.16 09:06 Сейчас в теме
(25) belas, мне нужно было сумму распределить. А если вам сумма не нужна, так у вас проблемы и нет. Умножь на что нужно, что вы еще вычисляете?
20. nikolayD 5 15.01.16 12:03 Сейчас в теме
(16) belas, Судя по паузе я понял, что не понятно, расшифрую формулу...
1+<База> х (<коэффициент>-1) / <сумма баз распределения всех ячеек> х <База распределения данной ячейки> / <Сейчас в ячейке> = 1+37000*(1,2-1)/(80+110+30)*80/10000 =1,269091
Будет в ячейке 10000 * 1,269091 =12690,91
Т.е. столько же сколько (8) nikolayD,
С точки зрения программирования или математики, вычислять коэффициент для того, что б получить итог в ячейке - лишнее, не нужное действие, разве что вам нужно показать кому-то рост.
Вы просто тратите время машины, а с точки зрения математики - это не упрощённая формула.
26. belas 6 18.01.16 07:39 Сейчас в теме
(20) nikolayD,
1+<База> х (<коэффициент>-1) / <сумма баз распределения всех ячеек> х <База распределения данной ячейки> / <Сейчас в ячейке> = 1+37000*(1,2-1)/(80+110+30)*80/10000 =1,269091
Будет в ячейке 10000 * 1,269091 =12690,91


При таком подходе коэф-ты получатся
1,269090909
1,168181818
1,201818182

при базе
80
110
30

т.е величина коэф-тов не соответствует величине базы.
28. nikolayD 5 18.01.16 09:05 Сейчас в теме
(26) belas,


При таком подходе коэф-ты получатся
1,269090909
1,168181818
1,201818182

при базе
80
110
30

т.е величина коэф-тов не соответствует величине базы.
Показать
Ясно, значит не понятно что за коэффициент нужен.
(27) belas,

далее для первого коэф-та и для второго будет так:

0,395252226 * 80/30 = 1,054005935
0,395252226 * 110/30 = 1,44925816

И что с этими коэффициентами делать нужно?
30. belas 6 18.01.16 09:17 Сейчас в теме
(28) nikolayD,
И что с этими коэффициентами делать нужно?


умножаем их на базу 10000, 22000, 5000 соответственно. Получаем некие значения, сумма которых будет 44000.
Вот это мне и было нужно :)
31. nikolayD 5 18.01.16 09:22 Сейчас в теме
(30) belas,
умножаем их на базу 10000, 22000, 5000 соответственно. Получаем некие значения, сумма которых будет 44000.
Вот это мне и было нужно :)
0,395252226
умножить на 5000, то уменьшится в ячейке, правда? Не понимаю, что Вы хотите.
32. belas 6 20.01.16 02:46 Сейчас в теме
(31) nikolayD,
Не понимаю, что Вы хотите.


Так я же уже написал, и что хотел получить тоже показал :)

Эта задача не связана с распределением премий, ФОТа, накладных и т.д. Просто математическая задача.
10. Xershi 1535 15.01.16 11:00 Сейчас в теме
(1) belas, у вас условие неверное.

Т.к. числа никогда не будут подогнаны к коефициентам, то всегда будет либо недобор, либо избыток! И только в идеальных случаях все сойдется по коэфициентам. Поэтому нужно составить правило, как будет брать коэффициент из лишней суммы, а также алгорит как раскидать остаток. Я например делал так. Брал целые числа, раскидывал по коэфициентом, а остаток закидывал на последнюю сумму. Т.к. распределить до целых можно только в идеальном случае, а в жизни так не бывает.
22. user_2010 988 15.01.16 12:39 Сейчас в теме
(1) belas, как из ваших исходных данных получился коэффициент 1.3?
24. belas 6 18.01.16 04:14 Сейчас в теме
(22) user_2010,

1,3 я написал для примера.
33. alex_sayan 58 20.01.16 04:25 Сейчас в теме
(1) как коэффициент вычисляется/распределяется?
34. belas 6 21.01.16 10:16 Сейчас в теме
(33) puzakov,

Для самой маленькой базы (30), то есть третий коэф-т будет считаться:

(1,2 * 37000)/(10000*80/30 + 22000*110/30 + 5000*30/30) = 0,395252226

далее для первого коэф-та и для второго будет так:

0,395252226 * 80/30 = 1,054005935
0,395252226 * 110/30 = 1,44925816
35. nikolayD 5 21.01.16 10:39 Сейчас в теме
(34) belas, блин, да из задачи понятно лишь, что Вам нужен коэффициент. Понятно что он никакого смысла физического не несёт. И думай что хочешь. Найди то, не знаю что. Это не математическая задача и вообще не задача, так задача не ставится.
То что Вы выкладываете, Вы сами решили что хотите найти и нашли? Всё?
36. alex_sayan 58 22.01.16 06:17 Сейчас в теме
(34) кхм, всё стало ещё запутаннее... Расскажите прикладной смысл Ваших вычислений. Может если Вы опишите гипотетическую прикладную задачу, то найдутся люди, которые её уже решали.
2. adva 45 15.01.16 10:09 Сейчас в теме
Вроде как распределять надо именно разницу между начальной и конечной суммой, смысла распределения самих коэффициетов, не вижу.

Может задачу расскажешь?
3. adva 45 15.01.16 10:15 Сейчас в теме
А чтобы коэффициент соответствовал, надо именно конечную сумму расскидать
4. belas 6 15.01.16 10:16 Сейчас в теме
Надо именно коэф-ты получить, потом эти коэф-ты используются в других расчетах.
саму сумму распределять в моем случае неверно, коэф-ты самой базе распределения не будут соответствовать.
5. belas 6 15.01.16 10:18 Сейчас в теме
Если распределить сумму 7000 и получить коэф-ты то получиться такая картина

Коэф-т        База 
1,269090909	80
1,168181818	110
1,201818182	30

Как видно, с базой величина коэф-та никак не завязана.
6. adva 45 15.01.16 10:25 Сейчас в теме
(5) так они и никак не связаны с базой, для начальной суммы у тебя одни коэффициенты, для разницы, другие, а для конечной суммы получаться третьи. Лучше бы все таки задачу понять, а то может неверный подход?
9. user_2010 988 15.01.16 10:56 Сейчас в теме
(6) adva, тоже не понятна суть - что хотят сделать?
повышение фонда ЗП на 20%. Но делят этот фонд не всем пропорционально, а по выбору: себе любимому поболе, остальным - сколько останется...
так?
Может быть сначала вычислить ВЕС каждой составляющей до повышения?
затем крутить...
не понятна логика ваших 80 110 и 30 - это что?
14. belas 6 15.01.16 11:35 Сейчас в теме
(9) user_2010,
80, 110, 30.
Это база которая задана экспертно, она просто данность. То есть мы хотим чтобы второй коэф-т был больше первого и второго соразмерно базе, третий коэф-т будет самым маленьким. При этом он может быть даже меньше 1. То есть по факту , третья составляющая после умножения, может оказаться меньше первоначального значения. А всю нагрузку тут понесет вторая составляющая.
11. adva 45 15.01.16 11:11 Сейчас в теме
а в итоге хотя приказ по всем на одинаковую сумму? Так точно не получиться, если использовать предложенные коэффициенты.

Если всем по разному, то только 7000 расскидать, как требуют, и указать, что для каждой группы на разный процент изменилась сумма зарплаты
12. adva 45 15.01.16 11:12 Сейчас в теме
а если всем одинаково, то 7000 расскидывать пропорционально начальной сумме, а не придуманным коэффициентам
23. belas 6 18.01.16 04:14 Сейчас в теме
методом перебора, получаются такие коэф-ты (автор расчета AlPepper)
1,05400800000000
1,44926100000000
0,39525300000000
27. belas 6 18.01.16 08:26 Сейчас в теме
Вычислил формулу

Для самой маленькой базы, то есть третий коэф-т будет считаться:

(1,2 * 37000)/(10000*80/30 + 22000*110/30 + 5000*30/30) = 0,395252226

далее для первого коэф-та и для второго будет так:

0,395252226 * 80/30 = 1,054005935
0,395252226 * 110/30 = 1,44925816
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот