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

Рекурсия в нахождении числа ряда Фибоначчи. - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ хеширование http://www.cyberforum.ru/cpp-beginners/thread410438.html
подкиньте литературы или статей по минимальному совершенному хешированию, алгоритм, производительность, применение. буду очень благодарен
C++ Структуры (С записью в файл) Вот написал код програмки: условие таково, мы вводим в ручную очки по матчам(игра в футбол),собственно говоря програмка подсчитывает команды которые заняли 1-ые места и команды занявшие 3 места,после... http://www.cyberforum.ru/cpp-beginners/thread410437.html
C++ Структуры данных: списки
Для каждого файла в каталоге содержатся следующие сведения: • Имя файла; • Дата создания; • Количество обращений к файлу. Составить программу, которая обепечивает: • Начальное...
Сумма элементов массива C++
в с++ в одномерном массиве, состоящем из n вещественных элементов, вычислить сумму элементов массива, расположенных после первого положительного элемента. Что-то я не пойму, как решать...
C++ Что не так с прогой? http://www.cyberforum.ru/cpp-beginners/thread410428.html
На прямой показано несколько точек . После чего между разными соседними точками прибавили по точке . Такую операцию зделали к раз после чего на прямой аказалось N точек .Определить сколько точек было...
C++ разработка программ решения трансцендентных уравнений Определение наименьшего положительного корня уравнения F(x)=0, Табулирование функции F(x) на интервале (А, В) с шагом H x^4+2*x^3-x-1. (A=0, B=5, H=0/5). Результат решения Интервал... подробнее

Показать сообщение отдельно
Dani
1393 / 637 / 57
Регистрация: 11.08.2011
Сообщений: 2,282
Записей в блоге: 2
Завершенные тесты: 1
18.12.2011, 15:11
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <iostream>
 
typedef unsigned long long ulong;
 
ulong fib (int n)
{
    if (n==1 || n==2) return 1;
    return fib(n-1)+fib(n-2);
}
 
 
int main()
{
    int n;
    std:: cin >> n;
    std:: cout << fib(n) << "\n";
    system ("pause");
    return 0;
}
А если меморизацию поставите - зачет в кармане

Добавлено через 23 минуты
Что-то вроде
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>
 
typedef _int64 ulong;
int mem[20]={0};
 
 
ulong fib (int n)
{
    if (n==1 || n==2) return 1;
    if (mem[n]!=0) return mem[n];
    else 
    {
        mem[n]=fib(n-1)+fib(n-2);
        return mem[n];
    }
}
 
 
int main()
{
    int n;
    std:: cin >> n;
    std:: cout << fib(n) << "\n";
    system ("pause");
    return 0;
}
Так гораздо быстрее работает
1
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru