Форум программистов, компьютерный форум 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++ я почти ноль, поэтому идей у меня нет:( Я примерно представляю, что надо поделить предложение на слова, занести в массив, наверное, потом перевернуть каждое слово и собрать их обратно в новую... подробнее

Показать сообщение отдельно
bruce_
1 / 1 / 1
Регистрация: 30.01.2013
Сообщений: 43

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

12.06.2013, 11:52. Просмотров 279. Ответов 8
Метки (Все метки)

здравствуйте!
я начал изучать с++... дошел до функций (а именно рекурсии)... я понял, что рекурсия-это функция, которая сама себя вызывает.. так вот.. я решил написать примитивную программу для вычисления факториала...
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
#include <iostream>
using namespace std;
int fac(int a)
{
    if (a==0){return 1;}else{return a*fac(a-1);}
}
int main()
{
    int a;
    cin>>a;
    cout<<"n!="<<fac(a);
    return 0;
}
выводит правильно все правильно... но мне стало интересно: как я понял, если функция равно 0, то она вернет значение 1... а вот если не 0, то будет повторятся до того, пока она не будет равняться 0. Но если она будет равняться нулю, то программа должна же вывести 1, а выводит факториал числа... надеюсь, что вы поняли, что я имел в виду! покажите мне детально как будет работать моя программа, если я введу 5?
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru