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

Кэширование. Числа Фибоначчи. - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Цикл с параметром и цикл с условием http://www.cyberforum.ru/cpp-beginners/thread220681.html
1. Составить программу вычисления суммы первых 10 непарных чисел 2. Дано числовой ряд и некоторое число "епсила". Найти сумму тех членов ряда, модуль которых больше или равняется "епсила"....
C++ Перегрузка операции [][] для класса Матрица Добрый день. Возможно, кто нить знает, как правильно перегрузить операцию для класса Матрица. Класс описан так class matrix { private: float **matr; //матрица int n; http://www.cyberforum.ru/cpp-beginners/thread220677.html
C++ Упорядочить строки массива в порядке возрастания значения элемента
делаю курсовик и по одному из последних заданий нужно написать алгоритм, который должен упорядочить информацию (заданную построчно) о некоторых точках по возрастанию значения r массив выглядит...
C++ Распределение памяти в структуре .
Пожалуйста, скажите сколько будет размер данной структуры (без pragma pack) struct A{ char c; in i; short s; long e; char n; }; А если можете , то опишите по скольку байтов памяти добавляется...
C++ левый верхний треугоьник http://www.cyberforum.ru/cpp-beginners/thread220659.html
составить функцию для вывода матрицы так чтобы ее левый верхний треугоьник был закрашен каким-то цветом. Помогите люди добрые! Добавлено через 1 час 21 минуту ВОТ что получилось...но оно не...
C++ Поиск в файле номера телефона по введенной фамилии. Добрый день, ранее особо никогда не работал с файлами в С, но вот теперь перед мной поставлена задача, и я столкнулся с определенными трудностями. Сама суть задания: В текстовом файле дан список... подробнее

Показать сообщение отдельно
KOPC1886
27 / 6 / 0
Регистрация: 28.10.2010
Сообщений: 352

Кэширование. Числа Фибоначчи. - C++

26.12.2010, 16:18. Просмотров 504. Ответов 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
27
28
29
30
31
32
33
34
35
#include "stdafx.h"
#include <iostream>
using namespace std;
 
int fib(int n)
{   
    
    int kash[80];
    for (int i=1;i<=n;i++)
        {
            kash[i]=0;
        }
    if (kash[n]==0)
    {   if (n==1 || n==2)
                {
                    return n;
                }
        else
          kash[n]=fib(n-1)+fib(n-2);
    }
    
    
    return kash[n];
 
}
 
int _tmain(int argc, _TCHAR* argv[])
{
 
    int n=40;
    cout <<fib(n)<<endl;
 
    
    return 0;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru