С наступающим Новым годом! Форум программистов, компьютерный форум, киберфорум
Наши страницы
Delphi для начинающих
Войти
Регистрация
Восстановить пароль
 
romanzi
12 / 12 / 1
Регистрация: 14.12.2010
Сообщений: 316
1

Число фиббоначи

29.11.2013, 20:39. Просмотров 264. Ответов 4
Метки нет (Все метки)

На выходе выходит 0 или 2.
В чём ошибка?

Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
function fib(num: integer): integer;
var
    fibbo: array [0..150] of integer;
    i: integer;
begin
    fibbo[1] := 1;
    fibbo[2] := 1;
 
    for i := 3 to num do
    begin
        fibbo[i] := fib(fibbo[i - 1]) + fib(fibbo[i - 2]);
    end;
    result := fibbo[num];
end;
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
29.11.2013, 20:39
Ответы с готовыми решениями:

Загадано целое число из интервала [A,B]. Написать программу, которая за минимальное число вопросов отгадает это число
Я загадаю целое число из интервала . Напишите программу, которая за минимальное...

В ответ на введенное число от 0 до 10 выдать сообщение четное это число или нет. То же число для любого целого числа ≤100
В ответ на введенное число от 0 до 10 выдать сообщение четное это число или...

Пользователь вводит трехзначное число. Поменять местами число сотен и единиц
Дана задача, помогите решить) Пользователь вводит трехзначное число....

Дано действительное число а, и натуральное число n. Найти частичную сумму ряда
1/a + 1/a^2 + 1/a^4 +... 1/(a^(2)^n)

Вывести данное число по образцу: число 12.5 преобразовать к виду 12 руб. 50 коп
доброго времени суток! срочно нужна ваша помощь. помогите, пожалуйста,...

4
Skid
14 / 14 / 4
Регистрация: 12.01.2012
Сообщений: 128
29.11.2013, 20:57 2
Цитата Сообщение от romanzi Посмотреть сообщение
На выходе выходит 0 или 2.
В чём ошибка?

Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
function fib(num: integer): integer;
var
    fibbo: array [0..150] of integer;
    i: integer;
begin
    fibbo[1] := 1;
    fibbo[2] := 1;
 
    for i := 3 to num do
    begin
        fibbo[i] := fib(fibbo[i - 1]) + fib(fibbo[i - 2]);
    end;
    result := fibbo[num];
end;
Помойму так!т.к. в твоей процедуре они каждый раз опять ровняются 1!да и вообще первое число 0 должно быть)
вообщем вот код, про ряду фибоначи все сходится:

Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
function fib(num: integer): integer;
var
    fibbo: array [0..150] of integer;
    i: integer;
begin
    fibbo[1] := 0;
    fibbo[2] := 1;
 
    for i := 3 to num do
    begin
        fibbo[i] := fibbo[i - 1] + fibbo[i - 2];
    end;
    result := fibbo[num];
end;
0
volvo
Супер-модератор
Эксперт Pascal/DelphiАвтор FAQ
26522 / 17811 / 7048
Регистрация: 22.10.2011
Сообщений: 31,348
Записей в блоге: 6
29.11.2013, 21:01 3
Это не тот код, который нужен автору. У него попытка сделать рекурсию с мемоизацией, у тебя - просто цикл.
0
Skid
14 / 14 / 4
Регистрация: 12.01.2012
Сообщений: 128
29.11.2013, 21:05 4
Цитата Сообщение от UI Посмотреть сообщение
Это не тот код, который нужен автору. У него попытка сделать рекурсию с мемоизацией, у тебя - просто цикл.
добавьте кнопку удаления сообщения)яб удалил хоть)раз непонял что требуется)
0
Cortez_Cardinal
0 / 0 / 0
Регистрация: 25.10.2013
Сообщений: 5
30.11.2013, 00:09 5
А как с рекурсивной мемоизацией правильно делается?
Знаю, что в Python алгоритм примера Romanzi работает.
0
30.11.2013, 00:09
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
30.11.2013, 00:09

Дано действительное число x, натуральное число N. Вычислить сумму синусов
s=sin x+sin sin x+ sin sin sinx .......sin n x

Дано вещественное число X и целое число N (> 0). Найти значение выражения
Дано вещественное число X и целое число N (> 0). Найти значение выражения X –...

Создать процедуру проверки заданного значения S (строка, целое число, дробь, число)
Создать процедуру проверки заданного значения S(строка, целое число, дробь,...


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

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

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