任意长度的两个正整数相乘
题目:
两个大数相乘:char* multiply(char*,char*)。给了两个字符串,每个都是代表了一个很长的10进制表示的数, 比如 String str1 = "23456789009877666555544444"; String str2 = "346587436598437594375943875943875", 最后求出它们的乘积。 不用jdk的数学运算包BigInteger.或者类似的包。
思考:
这是一个大数相乘为题,大家都知道int、long等变量表示的数值有限,当出现超过这个限度的数值计算的时候,就是一个大数的计算问题,就需要用到数组了。
大致思想就是,把改进位的先保存,先不进位,保存到数组中,计算出"每一位“的值之后,在从"最低位"开始往高位进位。<