Давайте сделаем простой пример и попробуем найти формулу:
100 * 1.10 = 110;
110 * 1.10 = 121;
121 * 1.10 = 133.1;
Итак, сейчас у нас есть:
basic_number (will be bn) * increase_value (will be iv) = basic_number2;
bn2 * iv = bn3;
bn3 * iv = bn4;
Мы можем написать это тоже:
bn * iv = bn2;
bn * iv * iv = bn3;
bn * iv * iv * iv = bn4;
Итак, у нас есть начало формулы:
bn * iv^3 = bn4;
Теперь у вас будут данные в соответствии с вашим постом:
X : the number of increase
bnX : the basic number increase X time
iv : the increase value
И вы хотите найтиbn в соответствии с этими значениями:
bn * iv^X = bnX;
bn = bnX / iv^X;
bn = bnX / (iv * iv * iv ... * iv); // X time
Так что с PHP это может выглядеть так:
$X = /* the number of incease */;
$bnX = /* the basic number increase X time */;
$iv = /* the increase value */;
for($i = 0; $i < $X; $i++) {
$bnX = $bnX / $iv;
}
Таким образом, если вы echo $bnX;
в конце цикла, выдолжен получить ваш базовый номер!
Вы можете попытаться создать формулу php и использовать ее каждый раз:
// 1/ Using a loop
function getBasicNumber($bnX, $X, $iv) {
for($i = 0; $i < $X; $i++) {
$bnX = $bnX / $iv;
}
return $bnX;
}
РЕДАКТИРОВАТЬ
// 2/ Using pow
function getBasicNumber($bnX, $X, $iv) {
return $bnX / pow($X, $iv);
}
// 3/ Using '**'
function getBasicNumber($bnX, $X, $iv) {
return $bnX / $X**$iv;
}
Таким образом, вам просто нужно сделать:
echo getBasicNumber(133.1, 3, 1.10); // 100 here for example
Надеюсь, это понятно?Но все же, это скорее математическая проблема, чем программирование