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

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

25.06.2013, 19:45. Показов 1021. Ответов 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
Ответ Создать тему
Новые блоги и статьи
BOINC: 22 года — и всё ещё работает
Programma_Boinc 12.03.2026
BOINC: 22 года — и всё ещё работает Дэвид Андерсон написал ретроспективу. Кратко: в 2001 году он ушёл из United Devices, где был CTO, и за несколько месяцев написал ядро BOINC — клиент, сервер,. . .
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога Финальные проекты на Си и на C++: hello-sdl3-c. zip hello-sdl3-cpp. zip Результат:
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru