Страница 1 из 1

Разделение призового фонда?

СообщениеДобавлено: 27 сен 2020, 01:59
Woolf
Есть задача, целочисленно разделить призовой фонд на три позиции. Т.е. есть, к пример, 10 айтемов, нужно внятно разделить их в пропорции 5/3/2 и так, чтобы ничего не потерялось и все были распределены, даже в случае, если их 7 или 13. Есть ли внятное решение без костылей?

Re: Разделение призового фонда?

СообщениеДобавлено: 27 сен 2020, 09:31
1max1
Лучше, конечно, так не делить. Это как разделить 1 на 3 ровных части, что является невозможным и за тучи троек в конце.
Допустим предметов 7, но пропорция рассчитана для 10, значит надо ее пересчитать:
5 * 7 / 10 = 3.5
3 * 7 / 10 = 2.1
2 * 7 / 10 = 1.4
3.5 + 2.1 + 1.4 = 7
Ну вот теперь решай, где надо округлить, кому добавить, а кому обрезать. Тоже самое с 13 и тд.

Re: Разделение призового фонда?

СообщениеДобавлено: 27 сен 2020, 15:19
BornFoRdeatH
Ну можно как-то так

https://rextester.com/TLHJ71944

Re: Разделение призового фонда?

СообщениеДобавлено: 28 сен 2020, 00:32
Friend123
А чем не пойдет обычная процентовка в размере, к примеру, 60%, 30%, 10%? С округлением конечно и последующей проверкой, что конечный результат не вышел за границы исходного.

Re: Разделение призового фонда?

СообщениеДобавлено: 28 сен 2020, 00:59
Tolking
Приз делать таким, чтобы проблем не возникало...