Как вычислить мультипликатор в сумме, такой как sum + = sum * (mulu ^ n)

Я хотел бы рассчитать фактор расходов в правиле, в котором мы проводим N-й раз, когда предыдущий платеж сделан

Вот пример расходов.

firstPaymentAmount=10
SpendingFactor=5
PaymentCount=4

payment1:    10
payment2:    50       (=  10 x 5)
payment3:   250       (=  50 x 5)
payment4:  1250       (= 250 x 5)

В конце мы получаем сумму всех произведенных платежей и имеем:

10 + 50 + 250 + 1250 = 1560

Я хотел бы знать формулу, которая позволяет мне получить коэффициент расходов (= 5 здесь), зная только эти параметры:

paymentCount  = 4
initalPayment = 10
totalPaid     = 1560

Зная формулу для подсчета фактора расходов, я смогу узнать сумму и детализацию каждого платежа.

-5

Решение

Я пришел с решением. Он получает приближение фактора расходов, потому что нет прямой формулы.

Получение точного фактора расходов слишком сильно загружает процессор. Итак, я сначала вычисляю близкое приближение. Это значение всегда будет выше решения. Затем я уменьшаю это число до тех пор, пока не опускаюсь ниже общей заплаченной суммы.

Вот пример PHP того, что я сделал.

$paymentCount   = 4;
$initialPayment = 10;
$totalPaid      = 1560;

//----- precalculate the factor based on total payment for faster computation
//----- this predefined factor will always be above our final factor

$estimatedSpendingFactor = exp(log($totalPaid) / $paymentCount);

//----- find the estimated spending factor

do
{
$estimatedSpendingFactor -= 0.0001;

$y = $initialPayment * (pow($estimatedSpendingFactor, $paymentCount) - 1)
/ ($estimatedSpendingFactor-1);
}
while ($y > $totalPaid);

//-----

printf("The spending factor is %f\n", $estimatedSpendingFactor);

вывод будет:

The spending factor is : 5.000000
0

Другие решения

Других решений пока нет …