Форум программистов, компьютерный форум CyberForum.ru

рекурсия - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Составить программу вычисления корней по итерационной формуле http://www.cyberforum.ru/cpp-beginners/thread899311.html
C++ Составить программу нахождения корней нелинейного уравнения Составить программу нахождения корней нелинейного уравнения методом простой итерации с точностью вычисления E. http://www.cyberforum.ru/cpp-beginners/thread899305.html
Программа - Вычислить предел C++
Написать программу для вычисления предела. Заранее благодарю
Почему не считает количество гласных в файле? C++
Подскажите почему не считает кол-во гласных в файле?? #include <cstdlib> #include <iostream> #include <fstream> #include <string> using namespace std; int main(int argc, char *argv)
C++ Составить программу для вычисления значений функции F(x) http://www.cyberforum.ru/cpp-beginners/thread899295.html
Помогите решить :(
C++ Реверс слов в предложении Ребята, помогите! Надо написать прогу. В заданном предложении переставить буквы наоборот во всех словах и вывести полученное предложение в консоль. Прошерстил форум - не нашел ничего дельного. В c++ я почти ноль, поэтому идей у меня нет:( Я примерно представляю, что надо поделить предложение на слова, занести в массив, наверное, потом перевернуть каждое слово и собрать их обратно в новую... подробнее

Показать сообщение отдельно
Dani
1263 / 621 / 50
Регистрация: 11.08.2011
Сообщений: 2,236
Записей в блоге: 2
Завершенные тесты: 1
12.06.2013, 12:29     рекурсия
Смотри.
Ты вызываешь fac (5). Твоя функция видит только то, что 5 != 0, значит 5! == 4! * 5. Затем эта функция вызывает fac (4).

Вызвалась fac (4). Твоя функция видит только то, что 4 != 0, значит 4! == 3! * 4. Затем эта функция вызывает fac (3).

Вызвалась fac (3). Твоя функция видит только то, что 3 != 0, значит 3! == 2! * 3. Затем эта функция вызывает fac (2).

Вызвалась fac (2). Твоя функция видит только то, что 2 != 0, значит 2! == 1! * 2. Затем эта функция вызывает fac (1).

Вызвалась fac (1). Твоя функция видит только то, что 1 != 0, значит 1! == 0! * 1. Затем эта функция вызывает fac (0).

Вызвалась fac (0). Твоя функция видит только то, что 0 == 0, значит 0! == 1. Следовательно, 0! = 1.

Вызов fac (0) завершился. Возвращаемся в fac (1). Т.к. fac (1) = 0! * 1, то fac (1) = 1 * 1 = 1; (т.к. fac (0) = 1).

Вызов fac (1) завершился. Возвращаемся в fac (2). Т.к. fac (2) = 1! * 2, то fac (2) = 1 * 2 = 2; (т.к. fac (1) = 1).

Вызов fac (2) завершился. Возвращаемся в fac (3). Т.к. fac (3) = 2! * 3, то fac (3) = 2 * 3 = 6; (т.к. fac (2) = 2).

Вызов fac (3) завершился. Возвращаемся в fac (4). Т.к. fac (4) = 3! * 4, то fac (4) = 6 * 4 = 24; (т.к. fac (3) = 6).

Вызов fac (4) завершился. Возвращаемся в fac (5). Т.к. fac (5) = 4! * 5, то fac (5) = 24 * 5 = 120; (т.к. fac (4) = 24).

Вызов fac (5) завершился. Рекурсия завершена, возвращается значение 120.
 
Текущее время: 22:43. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru