Паскаль. нач. уровень.
числа фибоначчи определяются: f0=f1=1, fn=fn-1+fn-2, при n=2, (т.е. каждое последующее число равно сумме двух предыдущих). составить программу:
а) нахождения к-го числа фибоначчи
б) нахождение самого первого числа фибоначчи, превышающего м
в) вычисления суммы всех чисел фибоначчи, значения которых не превышают 1000.
ответ:
как-то так:
var i, m : integer;
s: longint;
function fib(n: integer): longint;
begin
if n< 2 then fib: =1
else fib: =fib(n-1)+fib(n-2);
end;
begin
writeln('f(25)=',fib(25));
write('enter m: ');
readln(m);
i: =1;
while fib(i)< =m do
inc(i);
writeln('fib(',i,') = ',fib(i), ' > m=',m);
s: =0;
i: =1;
while (fib(i)< =1000) do
begin
inc(i);
s: =s+fib(i);
end;
writeln('sum = ',s)