Приднестровская поддержка XOOPS
Рекурсия — это возможность функции вызывать саму себя. С одной стороны, это удобно, с другой стороны, если не предусмотреть условие выхода, это приводит к бесконечным циклам.
Для примера приведем вычисление факториала (листинг 23).
Листинг 23. Вычисление факториала
<b>Вычисление факториала</b><br><br>
Введите число<br>
<form action="<?php echo $_SERVER['SCRIPT_NAME']; ?>">
<input type="text" name="fact">
<input type="submit" value="OK">
</form><br>
<?php
function f_Factorial($x) {
if ($x == 0 || $x == 1) return 1;
else return ($x * f_Factorial($x - 1));
}
if (isset($_GET['fact'])) {
$fact = $_GET['fact'];
if (!preg_match('/^[0-9]+$/s', $fact)) {
echo 'Необходимо ввести целое число!';
}
else {
echo 'Факториал числа ' . $fact . ' = ' . f_Factorial((int)$fact);
}
}
?>
Отправитель | Нити |
---|
6 пользователь(ей) активно (3 пользователь(ей) просматривают Инструкции)
Участников: 0 Гостей: 6 далее... |