Паскаль переписать через процедуры и функции Даны два очень длинных целых числа (возможные значения превышают диапазон значений longint). Сложите эти числа
Program hellow;
var
s1, s2, s3: string;
n1, n2, n3, l1, l2, l3, i: byte;
c: string[1];
begin
readln(s1);
readln(s2);
l1 := length(s1);
l2 := length(s2);
if l1 > l2 then begin
s3 := s1; l3 := l1;
s1 := s2; l1 := l2;
s2 := s3; l2 := l3;
end;
s3 := ''; n3 := 0;
for i := l1 downto 1 do begin
val(s1[i], n1);
val(s2[l2], n2);
l2 := l2 - 1;
str((n1 + n2 + n3) mod 10, c);
s3 := c + s3;
if n1 + n2 + n3 > 9 then
n3 := 1
else n3 := 0;
end;
while n3 = 1 do begin
if l2 <> 0 then begin
val(s2[l2], n2);
l2 := l2 - 1;
str((n2 + n3) mod 10, c);
s3 := c + s3;
if n2 + n3 < 10 then
n3 := 0;
end
else begin
s3 := '1' + s3;
n3 := 0;
end;
end;
if l2 <> 0 then
s3 := copy(s2, 1, l2) + s3;
writeln(s3);
end.