高精度加法
pascal吧
全部回复
仅看楼主
level 2
旋风影狼 楼主
题目描述 Description
输入两个小于255位的数,求这两个数的和。
样例输入 Sample Input
111111111111111111111
222222222222222222222
样例输出 Sample Output
333333333333333333333
2014年02月07日 06点02分 1
level 3
program sum;
var
n1,n2:array[1..255] of longint;
s1,s2:string;
l1,l2,len,i:integer;
begin
readln(s1);
readln(s2);
l1:=length(s1);
l2:=length(s2);
for i:=1 to l1 do n1:=ord(s1[l1-i+1])-ord('0');
for i:=1 to l2 do n2:=ord(s2[l2-i+1])-ord('0');
len:=l1;
if l2>l1 then
len:=l2;
for i:=1 to len do
begin
n1[i+1]:=n1[i+1]+(ni[i]+n2[i])div 10;
n1[i]:=(n1[i]+n2[i]) mod 10;
end;
if n1[len+1]>0 then inc(len);
for i:=len downto 1 do
write(n1[i]);
writeln;
end.
2014年02月09日 01点02分 2
1