题目描述
高精度加法,x相当于a+b problem,[b][color=red]不用考虑负数[/color][/b]
输入输出格式
输入格式:
分两行输入a,b<=10^500
输出格式:
输出只有一行,代表A+B的值
输入输出样例
输入样例#1:
1
1
输出样例#1:
2
说明
这一题也没有什么特别的,就是个普通的高精加。
const
max=1000;
var
a,b:array [1..max] of integer;
procedure init;
var
s1,s2:ansistring;
l1,l2,i:longint;
begin
readln(s1);
readln(s2);
l1:=length(s1);
l2:=length(s2);
for i:=l1 downto 1 do
a[max-l1+i]:=ord(s1[i])-ord('0');
for i:=l2 downto 1 do
b[max-l2+i]:=ord(s2[i])-ord('0');
end;
procedure add;
var
s,g,i:longint;
begin
g:=0;
for i:=max downto 1 do
begin
s:=a[i]+b[i]+g;
a[i]:=s mod 10;
g:=s div 10;
end;
end;
procedure print;
var i,j:integer;
begin
i:=1;
while (a[i]=0) and (i<max) do inc(i);
for j:=i to max do
write(a[j]);
end;
begin
init;
add;
print;
end.