function power (n : integer) : integer;
begin
if n <= 0 then
return (1)
else
return (5 * power(n-1))
end; {power}
Can anyone give me an explanation on how to modify the function power of the code above in a way that for arguments of the form 2^k it computes the result just with k+1 calls?