У меня есть эта простая функция:
И вот код, который я написал для его реализации:
public function SimpleEquation($top, $bottom){
$result = (-1/(1 + M_E^(2*M_E - 2*($top/$bottom)))) + 1.032; //this is line 123.
$result = round($result, 2, PHP_ROUND_HALF_DOWN);
return $result;
}
Но когда я его выполняю, выдает ошибку:
ErrorException в строке 123 MyFile.php: деление на ноль
По сути, я думал, что с входным входом что-то не так, поэтому я попробовал уравнение с постоянными значениями, которые вызывают проблему для функции вместо переменных:
$result = (-1/(1 + M_E^(2*M_E - 2*(5.05/5.78)))) + 1.032;
echo "Result: ".$result."<br>";
Это также приводит к тому же делению на ноль ошибок. Я пытался переписать уравнение более 4 раз с нуля, и оно работает довольно хорошо с большинством значений. Я также пытался использовать простую константу, такую как $eulerConstant = 2.718
на случай переполнения системы или чего-то еще, но это все равно дало мне тот же результат.
Я был бы действительно счастлив с помощью о том, почему это не работает.
Большое спасибо.
Возведение в степень сделано с pow
функция, а не ^
побитовый оператор XOR.
Других решений пока нет …