洛谷 P1303 A*B Problem

来源:互联网 发布:网络防火墙是什么 编辑:程序博客网 时间:2024/05/22 00:17

题目描述

求两数的积。

输入输出格式

输入格式:
两个数

输出格式:

输入输出样例

输入样例#1:
1
2
输出样例#1:
2
说明
需用高精

老老实实打一个高精度乘法,注意数组位数

var  a,b,c:array [1..500] of integer;  n1,n2:ansistring;  lena,lenb,lenc,i,j,x:integer; begin  readln(n1);  readln(n2);  lena:=length(n1);  lenb:=length(n2);  for i:=1 to lena do a[lena-i+1]:=ord(n1[i])-48;  for i:=1 to lenb do b[lenb-i+1]:=ord(n2[i])-48;    for i:=1 to lena do    begin   x:=0;      for j:=1 to lenb do       begin      c[i+j-1]:=a[i]*b[j]+x+c[i+j-1];      x:=c[i+j-1] div 10;      c[i+j-1]:=c[i+j-1] mod 10;      end;   c[i+j]:=x;   end;  lenc:=lena+lenb;  while (c[lenc]=0) and (lenc>1) do dec(lenc);  for i:=lenc downto 1 do write(c[i]);  writeln;end.
1 0
原创粉丝点击