Новые сообщения · Правила  
  • Страница 1 из 1
  • 1
Модератор форума: Berestovskiy  
Форум ПРОГРАММИСТОВ » ПРОГРАММИРОВАНИЕ » Паскаль » Числа Фибоначчи
Числа Фибоначчи
Помогите решить задачу
Последовательность чисел Фибоначчи F[K] (целого типа) определяется следующим образом: F[1] = 1, F[2] = 1, F[K] = F[K-2] + F[K-1], K = 3, 4, ... . Определить k-е число Фибоначчи не используя цикл с параметром for
1 | Автор: VS210693 | 2012-05-21, 17:32   |  Репутация: [ + 0 ]
Если это числа Фибоначчи, то F[1]=0

Нужна помощь? Сюда: vkontakte.ru/berestovskiy
2 | Автор: Berestovskiy | 2012-05-21, 20:18   |  Репутация: [ + 211 ]


Нужна помощь? Сюда: vkontakte.ru/berestovskiy
2 | Автор: Berestovskiy | 2012-05-21, 20:18   |  Репутация: [ + 211 ]
так нужно именно из этого условия решить
3 | Автор: VS210693 | 2012-05-22, 08:34   |  Репутация: [ + 0 ]
Так тогда это не числа Фибоначчи))
Или всё равно решать?)


Нужна помощь? Сюда: vkontakte.ru/berestovskiy
4 | Автор: Berestovskiy | 2012-05-22, 09:16   |  Репутация: [ + 211 ]
да,реши пожалуйста)
5 | Автор: VS210693 | 2012-05-22, 15:41   |  Репутация: [ + 0 ]
Хорошо:)
Освобожусь - напишу код)


Нужна помощь? Сюда: vkontakte.ru/berestovskiy
6 | Автор: Berestovskiy | 2012-05-22, 17:07   |  Репутация: [ + 211 ]
хорошо,спасибо)
7 | Автор: VS210693 | 2012-05-22, 17:22   |  Репутация: [ + 0 ]
А обязательно не использовать for?)

Нужна помощь? Сюда: vkontakte.ru/berestovskiy
8 | Автор: Berestovskiy | 2012-05-22, 18:16   |  Репутация: [ + 211 ]


Нужна помощь? Сюда: vkontakte.ru/berestovskiy
8 | Автор: Berestovskiy | 2012-05-22, 18:16   |  Репутация: [ + 211 ]
да,нужно без него. там надо while или repeat,или и то и другое
9 | Автор: VS210693 | 2012-05-22, 19:13   |  Репутация: [ + 0 ]
Можно еще рекурсией воспользоватся или формулой n-ого члена.
10 | Автор: Fireleo | 2012-05-23, 07:10   |  Репутация: [ + 30 ]
да без разгицы,лишь бы без for.Если можешь,реши сейчас пожалуйчта,на сегодня нужно сдать её
11 | Автор: VS210693 | 2012-05-23, 07:23   |  Репутация: [ + 0 ]
Рекурсия
Code
function fib (n:byte):integer;
begin
    if n<=2 then
     fib:=1
    else
     fib:=fib(n-1)+fib(n-2);


Добавлено (23.05.12, 10:01)
---------------------------------------------
по формуле
f(n)=(((1 + Sqrt(5))/2)^n - ((1 - Sqrt(5))/2)^n)/Sqrt(5)

$$\frac{1}{\sqrt{5}}((\frac{1+\sqrt{5}}{2})^{n}-(\frac{1-\sqrt{5}}{2})^{n}$$

Code
function step(x,y:real):real//функция вычисления x в степени y
begin
step:=exp(ln(x) * y)
end;

function fib (n:byte):integer;    
var t1,t2: real;//временные переменный, только для лучшей читаемости кода.
t1:=(1+sqrt(5))/2;
t2:=(1+sqrt(5))/2;
fib:=(step(t1,n)-step(t2,n))/sqrt(5);
end;
12 | Автор: Fireleo | 2012-05-23, 10:01 | Изменено: Fireleo - Ср, 2012-05-23, 10:03   |  Репутация: [ + 30 ]
Красавчик)

Нужна помощь? Сюда: vkontakte.ru/berestovskiy
13 | Автор: Berestovskiy | 2012-05-23, 10:07   |  Репутация: [ + 211 ]
Форум ПРОГРАММИСТОВ » ПРОГРАММИРОВАНИЕ » Паскаль » Числа Фибоначчи
  • Страница 1 из 1
  • 1
Поиск: