С Новым годом! Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.83/40: Рейтинг темы: голосов - 40, средняя оценка - 4.83
0 / 0 / 0
Регистрация: 28.10.2016
Сообщений: 24
1

Найти первые N чисел Фибоначчи (рекурсия/итерация, сравнить эффективность)

06.04.2017, 10:15. Показов 8214. Ответов 2
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Найти первые N чисел Фибоначчи двумя способами: с помощью рекурсии и с помощью итерации. Сравнить эффективность алгоритмов.
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
06.04.2017, 10:15
Ответы с готовыми решениями:

Найти первые n чисел Фибоначчи (f0 = 1; f1 = 1; fk +1 = fk-1 + fk; k = 1, 2, 3,...)
Найти первые n чисел Фибоначчи (f0 = 1; f1 = 1; fk +1 = fk-1 + fk; k = 1, 2, 3,...) C++

Найти первые N чисел Фибоначчи
2. Найти первые N чисел Фибоначчи. Каждое число Фибоначчи равно сумме двух предыдущих чисел при...

Найти первые N чисел Фибоначчи
Подмогните пжлст... почему, блин, не работает код!? что тут не так? уже не знаю что/где...

Найти первые N чисел Фибоначчи
2. Найти первые N чисел Фибоначчи. Каждое число Фибоначчи равно сумме двух предыдущих чисел при...

2
1755 / 1347 / 1407
Регистрация: 28.10.2016
Сообщений: 4,267
06.04.2017, 11:39 2
Лучший ответ Сообщение было отмечено Ossuary как решение

Решение

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
#include "stdafx.h"
#include <iostream>
 
using namespace std;
 
int fib(int n)
{
    if (n == 0 || n == 1) return n;
    else return fib(n - 1) + fib(n - 2);
}
 
int main()
{
    setlocale(LC_ALL, "rus");
    int n; cout << "N = "; cin >> n;
    int a = 0; int b = 1;
    cout << "Без рекурсии: " << a << " " << b << " ";
    for (int i = 2; i <= n; i++)
    {
        cout << a + b << " ";
        int c = b;
        b = a + b;
        a = c;
    }
    cout << endl << "С рекурсией: ";
    for (int i = 0; i <= n; i++)
        cout << fib(i) << " ";
    cout << endl;
    system("pause");
    return 0;
}
1
Форумчанин
Эксперт CЭксперт С++
8216 / 5046 / 1437
Регистрация: 29.11.2010
Сообщений: 13,453
06.04.2017, 16:51 3
Hitoku, вот только вариант с рекурсией у вас почему-то не основывается на предыдущих результатах вычисления.
0
06.04.2017, 16:51
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
06.04.2017, 16:51
Помогаю со студенческими работами здесь

Вывести на экран первые n членов ряда Фибоначчи (рекурсия)
Вывести на экран первые n членов ряда Фибоначчи.(используя рекурсию)

Реверс цифр длинных чисел одномерного массива (итерация и рекурсия)
Разработать функцию, которая переставляет в обратном порядке цифры заданного длинного целого числа...

Вывести первые n чисел Фибоначчи
Задача такая: вывести на экран первые n числа фибоначи( 0,1,1,2,3,5,8,13,21,34,55 к примеру) то...

Вычислить первые 15 чисел Фибоначчи
Ребята, выручайте, горю. Данное задание нужно выполнить в двух вариантах: с использованием циклов с...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru