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

Каким образом в переменную записывается результат каждого рекурсивного вызова? - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ После легкой модификации кода он перестал компилироваться http://www.cyberforum.ru/cpp-beginners/thread1101838.html
Здравствуйте,у меня такая вот проблема: есть готовый проект в CodeBlocks,нужно лишь изменить одну строчку в тексте программы. Пробовал сам,но при сборке выдает следующие ошибки: mingw32-g++.exe...
C++ Определить, сколько среди чисел четных и сколько нечетных 2.Вводится последовательность целых чисел, 0 – конец последовательности. Сколько среди них четных чисел и сколько нечетных. http://www.cyberforum.ru/cpp-beginners/thread1101833.html
C++ Передача динамической матрицы в функцию
Здравствуйте подскажите пожалуйста, как можно передать динамическую матрицу, заданную и инициализированную следующим образом cout<<"Введите A --> "; cin>>A; cout<<"Введите B --> "; cin>>B;...
C++ Вывести текст на экран, меняя местами каждые два соседних слова
Написать программу, которая считывает текст из файла и выводит его на экран, меняя местами каждые два соседних слова
C++ Переделать через указатели http://www.cyberforum.ru/cpp-beginners/thread1101801.html
#include "stdafx.h" #include <iostream> #include <conio.h> using namespace std; void main() { int sum = 0, temp = 0, n; { cout<<"n= "; cin>>n; }
C++ Удалить из строки все подстроки str2 Ребят, нужна помощь. Написать программу, которая считывает с клавиатуры 2 строки (str1 & str2). Нужно из str1 удалить все подстроки str2. Например: str1: privet poka privetik str2: pr Результат:... подробнее

Показать сообщение отдельно
Максим2014
5 / 5 / 2
Регистрация: 10.07.2013
Сообщений: 113

Каким образом в переменную записывается результат каждого рекурсивного вызова? - C++

21.02.2014, 05:11. Просмотров 290. Ответов 7
Метки (Все метки)

Всем привет! Подскажите по данной задачи, немного недопонимаю:

ФАКТОРИАЛ:
C++
1
2
3
4
5
int FACT(int n)
{int res;
if(n==1) return 1;
res=n*FACT(n-1);
return(res);    }
Почему когда я вместо return 1 пишу return 0 он выводит ноль, а когда 1 - выводит результат?
Каким образом в переменную res записываеться результат каждого рекурсивного вызова?
Как я понимаю он суммируется что-ли? Допустим факториал равен 4, значит res=(4*3)+(4*2)+(4*1);
хотя тут просто присваиваем.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru