Программа на паскале, складывающая супер большие числа (при помощи строк)
Var
s,s1:string;
a,b:array[1..100]of integer;
i,n,x,k:integer;
begin
readln(s);
readln(s1);
n:=1;
if length(s)>length(s1) then
x:=length(s)
else x:=length(s1);
for i:=1 to length(s) do
begin
val(copy(s,i,1),k,n);
a[i+x-length(s)]:=k;
end;
for i:=1 to length(s1) do
begin
val(copy(s1,i,1),k,n);
b[i+x-length(s1)]:=k;
end;
for i:=1 to length(s) do
a[i]:=a[i]+b[i];
for i:=length(s) downto 2 do
begin
a[i-1]:=a[i-1]+a[i]div 10;
a[i]:=a[i]mod 10;
end;
for i:=1 to length(s) do
write(a[i]);
end.
Оцени ответ
