Технический форум

Технический форум (http://www.tehnari.ru/)
-   Delphi, Kylix and Pascal (http://www.tehnari.ru/f43/)
-   -   Определить, сколько будет амеб (http://www.tehnari.ru/f43/t87417/)

Мвнюня 12.04.2013 16:58

Определить, сколько будет амеб
 
Помогите, пожалуйста, решить задачку с помощью рекурсии на делфи. Амеба каждые три часа делится на 2 клетки. Определить, сколько будет амеб через n часов, если первоначально была одна амеба.

Мвнюня 12.04.2013 21:19

воть примерный код..но как сделать через рекурсию???? помогите пожалуйста!!
. procedure TForm2.Button1Click(Sender: TObject);
var amebs:integer;
i:integer;
begin amebs:=1;
for i:=1 to 24 do begin if i mod 3 = 0 then begin showmessage('Время:' +IntToStr(i)); amebs:=amebs*2;
showmessage('Амебы:' +IntToStr(amebs));
end;
end;
end;

interacia 12.04.2013 22:37

Функция возвращающая количество амеб.

Код:

function amebs(has:integer):integer;
 begin
if has<3 then amebs:=1
else amebs:=amebs(has-3)*2;
 end;

Подаете в неё количество часов
Для примера
Код:

Write('ameb:=',amebs(10));


Часовой пояс GMT +4, время: 17:54.

Powered by vBulletin® Version 4.5.3
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.