
Помогите пожалуйста написать код, для быстрого подсчёта чисел фибоначчи. Мне очень быстро считать до 50000 члена последовательности. Мне кажется, что нужно написать длинную арифметику по основанию k^l.
Первый член последовательности - 1;
Второй член последовательности - 1;
Мне кажется, что нужно на таком примере делать:
{Длинная арифметика}
const
pow = 9; // длинная арифметика по 9 десятичных чисел
base = round(1e9); // 10^pow
m = 10; // требуемое количество таких чисел
type
long = array [0..m] of integer;
procedure add(var a : long; var b : long);
var i, c : integer;
begin
c := 0;
for i := 0 to m do
begin
c := c + a[i] + b[i];
if c >= base then
begin
a[i] := c - base;
c := 1;
end else
begin
a[i] := c;
c := 0;
end;
end;
assert(c = 0);
end;
Помогите Пожалуйста написать код!