Поэтому я пытаюсь создать функцию, которая принимает количество, процент (десятичное число) и раз и возвращает удвоенный с суммой.
Результат, который я ожидаю, следующий:
$amount = 10000
$percentage = 1.1
$times = 1
так..
elevateToPercentage($amount, $percentage, $times) = 10,000 * 1.1 = 11,000
$times = 2
elevateToPercentage($amount, $percentage, $times) = ((10,000 * 1.1) * 1.1) = 12,100
$times = 4
elevateToPercentage($amount, $percentage, $times) = ((((10,000 * 1.1) * 1.1) * 1.1) * 1.1) = 14,641
private function elevateToPercentage($amount, $percentage, $times) {
$count = 0;
for( $a = 0; $a <= $times; $a++ ) {
$count += ($amount * $percentage);
}
return $count;
}
Я знаю, что это логическая ошибка, но я слишком много проснулся и, похоже, сейчас не работаю 🙁
ребята, пожалуйста, помогите мне?
Спасибо!
Как насчет:
function elevateToPercentage($amount, $percentage, $times) {
if ($times == 1){
return $amount * $percentage;
}else{
return $percentage * elevateToPercentage($amount, $percentage, $times -1);
}
}
Вы можете достичь этого с помощью функции Pow
function elevateToPercentage($amount, $percentage, $times) {
$multiple = pow($percentage, $times);
return number_format($amount*$multiple) ;
}
$amount = 10000;
$percentage = 1.1;
$times = 1;
echo elevateToPercentage($amount, $percentage, $times);
Выход:
$times = 1; 11,000
$times = 2; 12,100
$times = 4; 14,641