Форум программистов, компьютерный форум, киберфорум
PHP
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.75/4: Рейтинг темы: голосов - 4, средняя оценка - 4.75
Snow_f0x
1

Функция с рекурсией

22.04.2011, 16:19. Показов 746. Ответов 1
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Привет! Помогите пожалуйста. Не работает функция, точнее, результат выдает, но неправильный...(
Пишу форум. Нужно подсчитать количество тем.
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
    function topics_count($id, &$count){
        $res = DB::getInstance()->query("SELECT COUNT(id) as count FROM topics WHERE forum_id='{$id}'");
        $row = $res->fetch(PDO::FETCH_ASSOC);
        $count = $count + $row['count'];
        // проверяем есть ли подфорумы: 
        $check = DB::getInstance()->query("SELECT id FROM forums WHERE parent_id='{$id}'");
        while ($ch = $check->fetch(PDO::FETCH_ASSOC)){
            $f_list[] = $ch['id']; //id подфорумов
        }
        if (!isset($f_list)) {return $count;}
        else{       
            $c = 0;
            foreach ($f_list as $f_l) {
                $forum = new Forum($f_l);
                $count = $count + $forum->topics_count($f_l, $c);   
            }   
            
            return $count;
        }   
    }
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
22.04.2011, 16:19
Ответы с готовыми решениями:

Функция вычисления факториала с рекурсией
Помогите пожалуйста реализовать функцию вычисления факториала числа на PHP с рекурсией. Пример:...

Функция с рекурсией
Написать функцию с использованием рекурсии, которая увеличивает все элементы числового списка в два...

Функция itoa с рекурсией
Упражнение в книге Кернигана и Ритчи,пишу на С Нашел в Сети решение,но никак не могу понять его...

Функция поиска частей списка с рекурсией
Приветствую, форумчане. Прошу опытных гуру Лиспа помочь с решением задания: Нужно написать...

1
126 / 93 / 18
Регистрация: 09.01.2011
Сообщений: 467
23.04.2011, 02:02 2
Эта функция и не будет рекурсивной. Вы ведь создаете новый объект класса
PHP
1
2
3
4
                       foreach ($f_list as $f_l) {
                                $forum = new Forum($f_l);
                                $count = $count + $forum->topics_count($f_l, $c);       
                        }
Попробуйте заменить код выше на
PHP
1
2
3
                      foreach ($f_list as $f_l) {
                                 $count = $count + $this->topics_count($f_l, $c);       
                        }
0
23.04.2011, 02:02
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
23.04.2011, 02:02
Помогаю со студенческими работами здесь

Функция Поиска элемента дерева с рекурсией и без
Деревья. Функция Поиска элемента дерева с рекурсией и без. То бишь есть дерево и один листик...

Подскажите немножко с рекурсией ( Функция должна вызывать сама себя до тех пор пока sum не станет больше х)
Вводим число х. Функция должна вызывать сама себя до тех пор пока sum не станет больше х. Но...

с++ с рекурсией
помогите плиз разобраться с рекурсией.завал по лабораторным В данной последовательности чисел...

Забавочки с рекурсией
Напишите программу, находящую количество счастливых билетов с шестизначными номерами. Билет...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru