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

Вычисление n-ного числа Фибоначчи (без рекурсии)

25.06.2013, 19:45. Показов 1004. Ответов 5
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Написать программу для вычисления н-ного числа фибоначи. Я написал рекурсией. Но мне почему-то надо без нее, но и что бы код был довольно простой и понятный. Как можно переделать? вот мой рекурсивный код. Надо чтобы на не сложном уровне, но без рекурсии.
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
#include <iostream>
#include <iomanip>
using namespace std;
 
int fib(int);
 
int main()
{
    setlocale(LC_ALL, "Russian");
    int countFib;
 
    cout << "Сколько чисел Фибоначчи нужно вывести?: ";
    cin >> countFib;
 
    for (int i = 0; i < countFib; i++)
    {
        if (i % 10 == 0 && i > 0)
            cout << endl;
        cout << setw(7) << fib(i);
    }
 
    cout << endl;
    system("pause");
    return 0;
}
 
 
int fib(int n)         
{
     if (n == 0)
         return 0;
     if (n == 1) 
         return 1;
     else return fib(n - 1) + fib(n - 2);
}
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
25.06.2013, 19:45
Ответы с готовыми решениями:

Почему вычисление числа Фибоначчи с помощью рекурсии медленнее, чем без нее?
Почему, к примеру вычисление числа Фибоначчи с помощью рекурсии, когда #include&lt;iostream&gt; using...

Написать программу, организующую вычисление числа Фибоначчи с номером n с использованием рекурсии
Написать программу, организующую вычисление числа Фибоначчи с номером n с использованием...

Числа Фибоначчи без использования рекурсии и массивов
int a, b=0, c=1; cout&lt;&lt;&quot;Введите число Фибоначчи: &quot;&lt;&lt;endl; cin&gt;&gt;a; for(int i=2;i&lt;=(a-3);i++) {...

5
 Аватар для Maxtron
50 / 50 / 4
Регистрация: 17.11.2012
Сообщений: 229
Записей в блоге: 1
25.06.2013, 19:47
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
#include <iostream>
#include <stdlib.h>
#include <stdio.h>
#include <windows.h>
using namespace std;
 
int main()
{
    int n, l;
    cout << "Enter number of fibonacci: ";
    cin >> n;
    int *a;
    a = (int*)calloc(n, sizeof(int));
 
    a[0] = 0; a[1] = 1;
       for(int i = 2; i < n; i++)
        {
           a[i] = a[i-1] + a[i-2];
        }
 
    cout << "\nResult: " << a[n-1] << endl;
    
    system("pause");
    return 0;
}
1
3176 / 1935 / 312
Регистрация: 27.08.2010
Сообщений: 5,131
Записей в блоге: 1
25.06.2013, 20:00
Определение К-го числа последовательности Фибоначчи
1
 Аватар для iv-a
15 / 15 / 8
Регистрация: 25.06.2013
Сообщений: 63
25.06.2013, 20:02
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
#include <iostream>
using namespace std;
 
int main()
{
    int n, *a;
    
    cout << "Enter number of fibonacci: ";
    cin >> n;
 
    a = new int[n];
 
    if (n >= 1) a[0] = 0;
    if (n >= 2) a[1] = 1;
 
    for (int i = 2; i < n; i++)
        a[i] = a[i-1] + a[i-2];
 
    cout << "Result = " << a[n-1] << endl;
    
    delete [] a;    
    system("pause");
    return 0;
}
0
 Аватар для Maxtron
50 / 50 / 4
Регистрация: 17.11.2012
Сообщений: 229
Записей в блоге: 1
25.06.2013, 20:14
Цитата Сообщение от iv-a Посмотреть сообщение
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
#include <iostream>
using namespace std;
 
int main()
{
    int n, *a;
    
    cout << "Enter number of fibonacci: ";
    cin >> n;
 
    a = new int[n];
 
    if (n >= 1) a[0] = 0;
    if (n >= 2) a[1] = 1;
 
    for (int i = 2; i < n; i++)
        a[i] = a[i-1] + a[i-2];
 
    cout << "Result = " << a[n-1] << endl;
    
    delete [] a;    
    system("pause");
    return 0;
}
что-то напоминает
1
 Аватар для iv-a
15 / 15 / 8
Регистрация: 25.06.2013
Сообщений: 63
25.06.2013, 20:19
Цитата Сообщение от Maxtron Посмотреть сообщение
что-то напоминает
у меня немного измененная получилась
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
25.06.2013, 20:19
Помогаю со студенческими работами здесь

Числа Фибоначчи без рекурсии
Вот мой код. Задача простая - вывести числа Фибоначчи без рекурсии, чтобы упростить алгосложность....

Фибоначчи - без рекурсии! - прошу прокомментировать
Наверное, почти все, кто учился в школе и знает основы программирования, знают, что числа Фибоначчи...

Последовательность символов является правильным изображением целого 10-ного числа
Задача 3. Вводится последовательность символов, которая завершается символом точка. Определить...

Вычисление числа из последовательности Фибоначчи без использования массива
Последовательность Фибоначчи определяется так: a(0) = 1 ; a(1) = 1; a (k) = a(k-1) + a(k-2). Дано...

Описать процедуру RemoveForInc(A, N), удаляющую из веществен- ного массива A размера N «лишние» элементы
Описать процедуру RemoveForInc(A, N), удаляющую из веществен- ного массива A размера N «лишние»...


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

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Новые блоги и статьи
Модель микоризы: классовый агентный подход 3
anaschu 06.01.2026
aa0a7f55b50dd51c5ec569d2d10c54f6/ O1rJuneU_ls https:/ / vkvideo. ru/ video-115721503_456239114
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR
ФедосеевПавел 06.01.2026
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR ВВЕДЕНИЕ Введу сокращения: аналоговый ПИД — ПИД регулятор с управляющим выходом в виде числа в диапазоне от 0% до. . .
Модель микоризы: классовый агентный подход 2
anaschu 06.01.2026
репозиторий https:/ / github. com/ shumilovas/ fungi ветка по-частям. коммит Create переделка под биомассу. txt вход sc, но sm считается внутри мицелия. кстати, обьем тоже должен там считаться. . . .
Расчёт токов в цепи постоянного тока
igorrr37 05.01.2026
/ * Дана цепь постоянного тока с сопротивлениями и напряжениями. Надо найти токи в ветвях. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа и решает её. Последовательность действий:. . .
Новый CodeBlocs. Версия 25.03
palva 04.01.2026
Оказывается, недавно вышла новая версия CodeBlocks за номером 25. 03. Когда-то давно я возился с только что вышедшей тогда версией 20. 03. С тех пор я давно снёс всё с компьютера и забыл. Теперь. . .
Модель микоризы: классовый агентный подход
anaschu 02.01.2026
Раньше это было два гриба и бактерия. Теперь три гриба, растение. И на уровне агентов добавится между грибами или бактериями взаимодействий. До того я пробовал подход через многомерные массивы,. . .
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост. Налог на собак: https:/ / **********/ gallery/ V06K53e Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf Пост отсюда. . .
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop? Ниже её машинный перевод. После долгих разбирательств я наконец-то вернула себе. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru