// PascalABC.NET 3.2, сборка 1457 от 29.05.2017
// Внимание! Если программа не работает, обновите версию!
function Fib1(n:integer):integer;
begin
var f1:=1; var f2:=1;
while f2<=n do (f1,f2):=(f2,f1+f2);<br> Result:=f2
end;
function FibSum(k:integer):integer;
begin
Result:=1;
var f1:=0; var f:=1;
while true do begin
(f1,f):=(f,f1+f);
if Result+f>=k then Break
else Result+=f
end
end;
begin
Writeln(Fib1(ReadInteger('n=')));
Writeln(FibSum(1000))
end.
Пример
n= 12421
17711
986