PHP代码古埃及乘法javascript
算法如下。如果A和B是2个整数(仅为整数),则 如果被乘以,我们重复地将A乘以2,将B除以2,直到B 不能再进一步除以,直到它的值变为0(记住, 这是整数除法)。在每一步中,只要B是奇数, 我们将相应的A值添加到我们正在生成的产品中。在 最后,具有相应奇数B值的A值之和为 产品。明白了吗 下面是一个例子: 如果要相乘的两个整数是34和19,则运算为:PHP代码古埃及乘法javascript,javascript,php,Javascript,Php,算法如下。如果A和B是2个整数(仅为整数),则 如果被乘以,我们重复地将A乘以2,将B除以2,直到B 不能再进一步除以,直到它的值变为0(记住, 这是整数除法)。在每一步中,只要B是奇数, 我们将相应的A值添加到我们正在生成的产品中。在 最后,具有相应奇数B值的A值之和为 产品。明白了吗 下面是一个例子: 如果要相乘的两个整数是34和19,则运算为: A B Comment 34 19 add A to the product, B is odd 6
A B Comment
34 19 add A to the product, B is odd
68 9 add A to the product, B is odd
136 4 ignore this A value, B is even
272 2 ignore this A value, B is even
544 1 add A to the product, B is odd
将所有具有奇数B值的A值相加,得到:
34+68+544=646=>最终产品,如您的算法所述
$a = 34;
$b = 19;
$total = 0;
do{
$mod = $b % 2;
if($mod){
$total = $total + $a;
}
echo $mod." - ".$a." - ".$total . "<br/>"; //Steps
$a = $a * 2;
$b = floor($b/2);
}while($b > 0);
echo $total; // 646
在google中搜索“如果A和B是要相乘的2个整数(只有整数),我们重复将A乘以2,将B除以2”,您将得到一个链接[doc]。下载并阅读。向我们展示您尝试过的内容。请不要要求我们为您的练习提供完整的解决方案。展示你已经做了什么,以及你在哪里遇到了问题。请阅读,并学习如何创建一个。
Mod $a $total
---------------------------
1 - 34 - 34
1 - 68 - 102
0 - 136 - 102
0 - 272 - 102
1 - 544 - 646