Итеративная факторная функция:
function factorial($number) {
$result = 1;
while ($number > 0) {
$result *= $number;
$number--;
}
return $result;
}
Рекурсивная факторная функция:
function factorial($number) {
if ($number < 2) {
return 1;
} else {
return ($number * factorial($number-1));
}
}
Мне нужно разработать функцию для вычисления factorial в моей PHP-программе. Я понял, что могу сделать это в обоих направлениях.
- Что я не знаю, какой метод лучше использовать и почему?
- Что такое отраслевой стандарт?
- Как выбрать один из методов между двумя?
- Какое условие лучше определить, какой из них лучше?
Я знаю, что у меня много вопросов, но поскольку я новичок в PHP и надеюсь, что кто-то поможет мне.
Учитывая, что фактически функция, которую я использую, не просто факторная. У него есть и другие линии, которые выполняют некоторые другие задачи. Для упрощения предположим, что это две функции. Так что любой может понять мой вопрос, а не скомпоновать его без причины.
В основном я имею в виду рекурсию против итерации в PHP.