Ethiopian multiplication: Difference between revisions

Line 1,559:
{Show {EthiopicMult 17 34}}</lang>
 
=={{header|<lang PARI/GP}}=>halve(n)=n\2
double(n)=2*n
{{incorrect|PARI/GP|Task asks for three functions to be defined and used in the solution.}}
even(n)=!(n%2)
<lang PARI/GP>multE(a,b)={
multE(a,b)={ my(td=0);
while(a,
if if(bitand!even(a,1), t += b);
b <<= 1 d+=b);
a >>= 1 a=halve(a);
b=double(b));
);
t d
};</lang>
 
=={{header|Perl}}==
Anonymous user