Форум: "Потрепаться";
Текущий архив: 2003.11.13;
Скачать: [xml.tar.bz2];
ВнизФу-ия Найти похожие ветки
← →
Chuha (2003-10-16 17:27) [0]Функция F(N) дана следующим оьразом, нужно найти значение функции,
зная F(N), зная натруальное число N
f(0)=0, f(1)=1, f(2n)=f(n), f(2n+1)=f(n)+f(n+1).
Это чтол получается так(а то я что-то понять не могу)
Что если n=0 то и функция равна 0, если n=1 то и функция равна 1.
И тут самое не понятное, что если число четное (2n), то значение
цункции n/2, а если не четное, то 2n+1? Я правильно понил???
← →
Romkin (2003-10-16 17:34) [1]Нет.
0 1 1 2 1 3 и тд
← →
Chuha (2003-10-16 17:37) [2]Если N равно например 10 то значение фу-ии чему равно?
← →
pasha_golub (2003-10-16 17:39) [3]Это какая-то извращенная модель чисел Фиббоначчи?
← →
MeF88 (2003-10-16 17:40) [4]f(10)=f(5)=3;
f(5)=f(2)+f(3)=3;
f(2)=f(1)=1;
f(3)=f(2)+f(1)=2;
← →
MeF88 (2003-10-16 17:41) [5]
> Это какая-то извращенная модель чисел Фиббоначчи?
Хуже.
← →
Nikolay M. (2003-10-16 17:45) [6]Это называется "по индукции".
На пальцах индукция объясняется так: если стоит очередь, первой в очереди стоит женщина, и за каждой женщиной тоже стоит женщина, тогда все стоящие в очереди - женщины :) (так, к слову пришлось...)
А F(10) = F(5) = F(2) + F(3) = 3 (Romkin написал)
← →
Chuha (2003-10-16 17:47) [7]Спасибо :)
← →
MeF88 (2003-10-16 17:50) [8]Кстати, легкая задача в программировании.
Довольно интересная в математике, но вроде тоже не слишком сложная.
← →
Chuha (2003-10-16 17:52) [9]И еще вопрос :)
Это что получается, что значение всегда будет равно 2 или 3, взависимости от числа ??
Если четное то 3, если не четное, то 2, если n=2 то 1?? Правильно или нет??
← →
Nikolay M. (2003-10-16 18:06) [10]
> Chuha (16.10.03 17:52) [9]
> Это что получается, что значение всегда будет равно 2 или
> 3, взависимости от числа ??
НЕТ!
На что задам встречный вопрос - а почему ты САМ не подсчитаешь первые 10 значений функции?
← →
Chuha (2003-10-16 18:30) [11]Подсчитал :)
:)
Получается, что если n делится на 2, но не делится на нечетные числа, то значение всегда равно 1. А так везде разные :(
← →
Юрий Зотов (2003-10-16 20:26) [12]"В лоб" - для желающих поисследовать (предупреждение - при больших N можно получить Stack Overflow).
function F(N: Cardinal): Cardinal;
begin
if N = 0 then Result := 0 else
if N = 1 then Result := 1 else
if Odd(N) then
begin
N := (N - 1) div 2;
Result := F(N) + F(N + 1)
end
else Result := F(N div 2)
end;
← →
Nikolay M. (2003-10-16 20:39) [13]
> Chuha (16.10.03 18:30) [11]
Ай, молодца :)
Только не "n делится на 2", а n равно степени двойки, тогда и функция будет равна 1.
Страницы: 1 вся ветка
Форум: "Потрепаться";
Текущий архив: 2003.11.13;
Скачать: [xml.tar.bz2];
Память: 0.47 MB
Время: 0.039 c