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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Begining
0 / 0 / 1
Регистрация: 22.12.2014
Сообщений: 25
#1

Рекурсия, числа фибоначи - C++

12.11.2016, 11:56. Просмотров 131. Ответов 3
Метки нет (Все метки)

Почему-то не хочет выводить число фибоначи и самостятельно не могу найти ошибку. Нужна помощь
Вот код:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <iostream>
#include <cstdlib>
 
using namespace std;
 
int fib_rec (int n) {
    return fib_rec (n-1) + fib_rec (n-2);
}
 
int main () {
 
    int n;
    cout << "N: ";
    cin >> n;
 
    cout << fib_rec (n);
    return 0;
}
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
12.11.2016, 11:56
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Рекурсия, числа фибоначи (C++):

Числа Фибоначи - C++
Написать программу, которая запрашивает с клавиатуры значения двух переменных А и В и вычисляет значение С в зависимости от условия:...

Числа фибоначи - C++
Написать программу для вычисления н-ного числа фибоначи. Я написал рекурсией. Но мне почему-то надо без нее, но и что бы код был довольно...

Числа Фибоначи на С++ - C++
Дано целое число N (&gt; 1). Последовательность чисел Фибоначчи FK (целого типа) определяется следующим образом: F1 = 1, F2 = 1, ...

Числа Фибоначи - C++
Как розпечатать числа Фибоначи на экран(Си)??????????????????

числа Фибоначи - C++
1)Определить 40-е число Фибоначи 2)поиск 1-го числа Фибоначи больше заданного числа m 3)Вычисление суммы всех чисел Фибоначи,которое не...

Класс числа фибоначи - C++
Дано целое число 1≤n≤40, необходимо вычислить n-е число Фибоначчи (нужно сделать через класс) #include &lt;cassert&gt; #include &lt;iostream&gt; ...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Ghost Writter
52 / 52 / 14
Регистрация: 09.12.2015
Сообщений: 214
12.11.2016, 12:02 #2
Begining, а так?

C++
1
2
3
4
5
int fib_rec (int n) {
    int temp = fib_rec (n-1) + fib_rec (n-2);
    cout << temp << endl;
    return temp;
}
Begining
0 / 0 / 1
Регистрация: 22.12.2014
Сообщений: 25
12.11.2016, 12:24  [ТС] #3
Ghost Writter, Не выводит все равно
Ofelion
12 / 12 / 7
Регистрация: 26.01.2015
Сообщений: 189
12.11.2016, 13:31 #4
Сообщение было отмечено автором темы, экспертом или модератором как ответ
Цитата Сообщение от Begining Посмотреть сообщение
Почему-то не хочет выводить число фибоначи и самостятельно не могу найти ошибку. Нужна помощь
Вот код:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#include <iostream>
#include <cstdlib>
 
using namespace std;
 
int fib_rec (int n) {
    return fib_rec (n-1) + fib_rec (n-2);
}
 
int main () {
 
    int n;
    cout << "N: ";
    cin >> n;
 
    cout << fib_rec (n);
    return 0;
}
Ты забыл условие выхода из рекурсии:

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
#include <iostream>
#include <cstdlib>
 
using namespace std;
 
int fib_rec(int n) 
{
    if (n <= 2)
    {
        return 1;
    }
    
    
    return fib_rec(n - 1) + fib_rec(n - 2);
}
 
int main() 
{
 
    int n;
    cout << "N: ";
    cin >> n;
 
    cout << fib_rec(n);
    return 0;
}
Добавлено через 11 минут
Begining, выше написал, что ты не указал базу рекурсии, то есть - условие выхода из неё.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
12.11.2016, 13:31
Привет! Вот еще темы с ответами:

Найти номер заданного числа Фибоначи - C++
Дано положительное число А. Найти номер к такого числа Фибоначи Xk, что Xk-1≤A&lt;Xk Числа Фибоначи X1=1, X2=1, X3=2,....Xk=Xk-1+Xk-2 ...

Вывести все числа от 1 до заданного натурального числа n (рекурсия) - C++
Дано натуральное число n. Выведите все числа от 1 до n (Рекурсия) Ввод - 5 Вывод - 1 2 3 4 5 Как сделать...

Рекурсия: Вывести числа от 1 до n - C++
Здравствуйте программисты! Столкнулся с проблемой. До этого момента решал все задачи итеративным способом, но пришло время знакомиться с...

Рекурсия: факториал числа - C++
#include &lt;iostream&gt; using namespace std; int factorial(int n); int main() { cout &lt;&lt; &quot;at main&quot; &lt;&lt; endl; cout &lt;&lt;...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
12.11.2016, 13:31
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru