读入两个均不超过200位的正数,求它们的和。键盘输入,屏幕输出。
来源:百度知道 编辑:UC知道 时间:2024/06/09 14:29:29
program add;
type
longnum=array[0..201] of integer;
var
i,len:integer;
s:string;
a,b,c:longnum;
procedure padd(a,b:longnum;var c:longnum);
var
i,larger:integer;
begin
if a[0]>b[0] then larger:=a[0] else larger:=b[0];
for i:=1 to larger do
c[i]:=a[i]+b[i]+c[i];
for i:=1 to larger do
begin
c[i+1]:=c[i+1]+c[i] div 10;
c[i]:=c[i] mod 10;
end;
if c[larger+1]<>0 then c[0]:=larger+1 else c[0]:=larger;
end;
begin
readln(s);
len:=length(s);
for i:=1 to len do
a[len-i+1]:=ord(s[i])-48;
a[0]:=len;
readln(s);
len:=length(s);
for i:=1 to len do
b[len-i+1]:=ord(s[i])-48;
b[0]:=len;
padd(a,b,c);
for i:=1 to c[0] do
write(c[c[0]-i+1]);