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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Rafnes
0 / 0 / 0
Регистрация: 18.10.2011
Сообщений: 6
#1

Фибоначчи - C++

22.10.2011, 12:35. Просмотров 554. Ответов 3
Метки нет (Все метки)

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <iostream>
using namespace std;
int pay (int k)
    {
    unsigned int a[90];
    int b,p;
    a[1] = 0; a[2] = 1; a[3] = 1;
    for (int i=4; i < k; i++) {
        a[i] = a[i-1] + a[i-2];
        }
    p = a[k]; 
    return (p);
    }
int main ()
{
    unsigned int N;
    freopen ("input.txt", "r", stdin);
    cin >> N;
    freopen ("output.txt", "w", stdout);
    cout << pay (N);
    freopen("CON", "w", stdout);
    return 0;
}
Уже голова кипит, а он все равно выдает 0... Прошу, помогите найти ошибку!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.10.2011, 12:35
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Фибоначчи (C++):

Набрать с чисел Фибоначчи в интервале от 1 до 100, только просто числа, а также их порядковые номера в ряду Фибоначчи - C++
Помогите с задачкой Набрать с чисел Фибоначчи в интервале от 1 до 100, только просто числа, а также их порядковые номера в ряду...

фибоначчи - C++
написать программу которая вычисляет столбцом числа фибоначчи

Фибоначчи - C++
Описать не рекурсивную функцию Fib целого типа, вычисляющую N-е число Фибоначчи F(N) по формуле: F(1) = F(2) = 1, F(k) = F(k-2) + F(k-1),...

Фибоначчи - C++
Дано целое число N(&gt;1), которое является числом Фибоначчи: N=Fk. Найти целые числа Fk-1 и Fk+1 - предыдущие и последующее числа...

Фибоначчи - C++
14. В заданном целочисленном массиве распечатать те элементы, порядковые номера которых – числа Фибоначчи, а также определить количество...

фибоначчи от и до. - C++
Распечатать все чиса Фибоначчи, которые попадают в промежуток, заданный двумя введенными с клавиатуры натуральными числами. должно...

3
valeriikozlov
Эксперт С++
4670 / 2496 / 321
Регистрация: 18.08.2009
Сообщений: 4,550
22.10.2011, 12:42 #2
см. комментарии
Цитата Сообщение от Rafnes Посмотреть сообщение
for (int i=4; i < k; i++) {// i никогда не станет равной k
a[i] = a[i-1] + a[i-2];// а значит a[k] не будет вычисляться
}
p = a[k];// возвращаем значение которое не вычислялось
0
Nameless One
Эксперт С++
5775 / 3425 / 255
Регистрация: 08.02.2010
Сообщений: 7,448
22.10.2011, 12:50 #3
Пример с кешированием:
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
36
37
38
39
40
41
#include <stdio.h>
#include <stdlib.h>
 
#define MAX_FIB 90
 
size_t pay(size_t n)
{
    static size_t fibs[MAX_FIB] = {1, 1};
    static size_t idx_last = 1;
 
    /* 0 - заведомо неверное значение
     * используется для индикации
     * неправильных входных данных (n >= MAX_FIB)
     */
    if(n >= MAX_FIB)
    return 0;       
        
    while(idx_last < n)
    {
    fibs[idx_last + 1] = fibs[idx_last] + fibs[idx_last - 1];
    ++idx_last;
    }
    
    return fibs[n];
}
 
#define PRINT_FIB(N) printf("fib[%02u] = %u\n", (N), pay(N))
 
int main(void)
{
    /* нумерацию чисел Фибоначчи будем начинать с нуля, как
     * и начинается индексация массивов в С
     */
    size_t i;
 
    /* первые 10 чисел Фибоначчи */
    for(i = 0; i < 10; ++i)
    PRINT_FIB(i);
    
    exit(0);
}
0
Rafnes
0 / 0 / 0
Регистрация: 18.10.2011
Сообщений: 6
22.10.2011, 13:15  [ТС] #4
valeriikozlov, Огромнейшее спасибо!
0
22.10.2011, 13:15
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
22.10.2011, 13:15
Привет! Вот еще темы с ответами:

Фибоначчи - C++
Доброго времени суток. Написал код задачки, но работает ООЧЕНЬ долго. Если сможете помогите исправить, спасибо ! ограничение времени на...

Цикл while - фибоначчи - C++
Вводится номер N . Определить N-ое по порядку число Фибоначчи . Используя цикл while ( do while ) . #include &lt;stdio.h&gt; #include...

Числа фибоначчи - C++
в чем недостаток этого алгоритма чисел фибоначчи? #include &lt;iostream&gt; using namespace std; int main() { __int64 a; int n; ...

Число Фибоначчи - C++
Дан одномерный массив А неупорядоченных натуральных чисел.Вывести на экран те элементы массива, которые нельзя представить суммой двух...


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru