Добрый день! Нужна консультация: программа для нахождения произведения 2-х чисел (метод Карацубы). Uses GraphABC;
var
n10,n20,i,p,k: uint64;
a,b,c,d: uint64;
x,y: uint64;
z,z1:uint64;
begin Window.Clear(clGreen);
write('Введите число1: '); readln(x); writeln(x); write('Введите число2: '); readln(y); writeln(y); write('Введите разрядность: '); readln(k); writeln(k);
k:=k div 2;
p:=1;
for i:=1 to k do p:=p10;
writeln(‘p=’,p);
a := x div p;
b := x mod p;
writeln(‘a=’,a);
writeln(‘b=’,b);
c := y div p;
d := y mod p;
writeln(‘c=’,c);
writeln(‘d=’,d);
n10:=1;
for i:=1 to k+k do n10:=n1010;
writeln(‘n10=’,n10);
n20:=1;
for i:=1 to k do n20:=n2010;
writeln(‘n20=’,n20);
z:=n10ac+n20(ad+bc)+bd;
writeln(‘z=’,z);
z1:=xy;
writeln(‘z1=’,z1);
end.
вроде работает корректно… НО… Как сделать чтобы можно было работать с целыми числами, длина у которых >50 -ти знаков? Спасибо.