Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Уроки № 3 - Знакомсво с функциями [3]
Форумы портала PHP.SU » PHP » Уроки php » Уроки № 3 - Знакомсво с функциями

Страниц (3): « 1 2 [3]
 

31. Nevada - 23 Августа, 2013 - 12:55:48 - перейти к сообщению
Здравствуйте! Объясните пожалуйста:
1) в чем разница между обращением к переменной по её идентификатору и объявление переменной глобальной, ведь в обоих случаях после выполнения функции, изменения происходят в ячейке переменной;
2) всё никак не могу понять Рекурсию, как функция может вызвать сама себя.
Заранее спасибо!
32. pashtetiprit - 30 Августа, 2013 - 17:51:15 - перейти к сообщению
не пойму как работает этот пример, распишите пожалуйста что происходит при
return fib($n - 1, $pre + $pre_pre, $pre);

<?PHP
// $pre и $pre_pre, как и в тот раз - предыдущий и предпредыдущий элемент.
// $n номер элемента, который мы ищем, НО реально смысл в этой переменной несколько другой.
// Она хранит в себе количество элементов, которое осталось посчитать
// Считать сумму начинаем с 3го элемента.
function fib($n, $pre = 1, $pre_pre = 0)
{
if ($n == 1) return 1;
if ($n < 1) return false;
if ($n == 2) // начинали с 3го, поэтому выходим, когда осталось посчитать два.
return $pre;

return fib($n - 1, $pre + $pre_pre, $pre);
}


echo fib(5);
?>
33. NoPaper - 30 Августа, 2013 - 20:42:52 - перейти к сообщению
pashtetiprit пишет:
не пойму как работает этот пример, распишите пожалуйста что происходит при

Функция fib рекурсивно вызывает себя.
http://clck[dot]ru/8ofFtt
34. donhu - 12 Июля, 2017 - 17:13:13 - перейти к сообщению
это все интересно, и даже я сразу разобралась в командах

 

Powered by ExBB FM 1.0 RC1