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

По поводу рекурсии - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Вывод информации в 1 строке http://www.cyberforum.ru/cpp-beginners/thread156280.html
Тут я в парочке консольных программ видел что, Там вывод идет на одной строке т.е cout << sub; и мне нужно что бы значение вывода менялось в зависимости от изменения переменной sub и делалось это на одном и том же месте. а не перескакивало на другие строчки
C++ Тип - матрица, состоящяя из float'ов 4x4 Как правильно объявить такой тип?? http://www.cyberforum.ru/cpp-beginners/thread156274.html
C++ Два модуля ссылаются на один
В двух модулях есть ссылка #include "Geometry.h" В результате ошибки: f:\projects\test7\geometry.h(9) : error C2011: 'TPoint' : 'struct' type redefinition f:\projects\test7\geometry.h(13) : error C2011: 'TPlane' : 'struct' type redefinition и.т.д. Как избавиться от ошибки??
C++ "Баг" в программе
#include <iostream> #include <conio.h> #include <cstdlib> using namespace std; template <class X> X abs(X n) { if (n < 0) return -n;
C++ Разбор массивов/контейнеров http://www.cyberforum.ru/cpp-beginners/thread156250.html
Только начинаю изучть с++, необходимо сделать 2 ассоциативных динамических массива и походу сразу разобраться что да как. Задача такова, первый массив в пике будет достигать ~300 тыс элементов. Добавление, удаление и поиск элементов по ключу будет производиться ~ 200 раз в минуту. Полное считывание массива будет происходить ~ один раз в 5 минут. При этом в сортировке нет необходимости Второй...
C++ неправильное чтение бинарного файла. программа должна по идее вывести 99.. мне так казалось.. #include <iostream> #include <stdlib.h> #include <stdio.h> using namespace std; int main() { подробнее

Показать сообщение отдельно
ForEveR
Модератор
Эксперт C++
 Аватар для ForEveR
7927 / 4709 / 318
Регистрация: 24.06.2010
Сообщений: 10,524
Завершенные тесты: 3
01.08.2010, 06:28  [ТС]     По поводу рекурсии
Собственно. Если новичкам, желающим понять рекурсию пригодится сея программа будет неплохо.
Вполне доходчиво объясняет что такое рекурсия. Выходные данные вполне неплохо описывают рекурсию вцелом, и рекурсию к этой программе. Максимальное значение переменной, которая передается в функцию 65. Более пока С++ не поддерживает (по крайней мере MSVS 2005).

Факториал с пояснениями
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
//Факториал. Рекурсия
 
#include <iostream>
 
typedef unsigned long long u_ll;
 
int l;
 
u_ll factorial(int);
 
int main()
{
    int n=0;
    std::cout<<"Enter n: ";
    std::cin>>n;
    l=n-1;
    std::cout<< factorial(n) <<'\n';
    return 0;
}
 
u_ll factorial(int n)
{
    static int p=n;
    static u_ll s=p;
    static int count=0;
    if(n<=l)
    {
        count++;
        s*=n;
        std::cout<<"Variable is: "<< p <<std::endl;
        std::cout<<"Var after "<< count <<" step of recourse is: "<< n <<std::endl;
        std::cout<<"Result after "<< count <<" step of recourse is: "<< s <<std::endl;
        std::cout<<std::endl;
    }
    if(n==1)
        return 1;
    else
        return n*factorial(n-1);
}
 
Текущее время: 14:51. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru