PHP-php实现大整数相加的方法

PHP-php实现大整数相加的方法

归属感 发布于 2017-03-07 字数 357 浏览 1099 回复 2

可能重复的问题
如何实现大数的加减乘除?

在计算机中,由于处理器位宽限制,只能处理有限精度的十进制整数加减法,比如在32位宽处理器计算机中,参与运算的操作数和结果必须在-231~231-1之间。如果需要进行更大范围的十进制整数加法就不知道怎么搞了,各位大牛赐教

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

浮生未歇 2017-09-28 2 楼

大整数的话用字符符或者数组表示,相应位相加,进位加在高一位就可以了。

function largerAdd($parm1,$parm2)
{
$tmp1 = array_reverse(str2array($parm1));
$tmp2 = array_reverse(str2array($parm2));
$tmp3 = array();
$tmp4 = 0;
$len1 = count($tmp1);
$len2 = count($tmp2);
$max_len = $len1>$len2?$len1:$len2;
$l1 = $len1;
$l2 = $len2;
print_r($tmp1);
print_r($tmp2);
for($i=0;$i<$max_len;$i++)
{
//if(isset())
$tmp3[$i] += ($tmp1[$i]+$tmp2[$i])%10;
$tmp3[$i+1] += floor(($tmp1[$i]+$tmp2[$i])/10);
}
}