Function Sum(x,y:String):String;
// Programer: Alireza Talebi
var
S,S2,xi,yi:String;
Max:Integer;
i,n,Temp,x1,y1:integer;
begin
xi:='';
yi:='';
if StrLen(PChar(Trim(x))) >= StrLen(PChar(Trim(y))) then
begin
Max := StrLen(PChar(Trim(x)));
for i := 1 to Max - StrLen(PChar(Trim(y))) do
yi := yi + '0';
end else
begin
Max := StrLen(PChar(Trim(y)));
for i := 1 to Max - StrLen(PChar(Trim(x))) do
xi := xi + '0';
end;
xi := Trim(xi + x);
yi := Trim(yi + y);
S := '';
n := 0;
for i:= Max downto 1 do
begin
Temp:=0;
x1 := StrToInt(xi[i]);
y1 := StrToInt(yi[i]);
Temp:=x1+y1+n;
if Temp < 10 then begin
S := S + IntToStr(Temp);
n := 0;
end
else
begin
S := S + IntToStr(Temp mod 10);
n := 1;
end;
end;
S2 := '';
for i:= StrLen(PChar(Trim(S))) downto 1 do
S2 := S2 + S[i];
Sum := S2;
end;