Предмет: Информатика,
автор: mei2
Определите, количество чисел K, для которых следующая программа выведет такой же результат, что и для K = 45:
var i, k: integer;
function F(x:integer):integer;
begin
if x < 2 then
F:= 1
else F:= 2*F(x-1) + F(x-2);
end;
begin
i := 0;
readln(K);
while F(i) < K do
i:=i+1;
writeln(i);
end.
Помогите решить, пожалуйста. нужно расписать
Ответы
Автор ответа:
0
Посмотри как функция строится
F(0)=1, F(1)=1, F(2)=3, F(3)=7, F(4)=17, F(5)=41, F(6)=99
То есть последующий элемент равен сумме удвоенного предыдущего и препредыдущего.
Код возвращает порядковый номер элемента, котрый больше данного K
Больше 45 будет шестой элемент, который равен 99.
Он также будет больше 42,43 и т.д.
Всего их 99-41=58 Если требуется исключить 45, то остается 57
Поясню, что 99 нам не подходит, а 41 подходит.
Ответ:57
F(0)=1, F(1)=1, F(2)=3, F(3)=7, F(4)=17, F(5)=41, F(6)=99
То есть последующий элемент равен сумме удвоенного предыдущего и препредыдущего.
Код возвращает порядковый номер элемента, котрый больше данного K
Больше 45 будет шестой элемент, который равен 99.
Он также будет больше 42,43 и т.д.
Всего их 99-41=58 Если требуется исключить 45, то остается 57
Поясню, что 99 нам не подходит, а 41 подходит.
Ответ:57
Интересные вопросы
Предмет: Литература,
автор: conechko81
Предмет: Английский язык,
автор: Аноним
Предмет: Алгебра,
автор: vikadibrovska
Предмет: Английский язык,
автор: nastyasko1
Предмет: Алгебра,
автор: karinatyan3463