Ethiopian multiplication: Difference between revisions
Content added Content deleted
(→{{header|Objeck}}: Marked incomplete as functions to halve and double are missing.) |
|||
Line 1,859: | Line 1,859: | ||
=={{header|Objeck}}== |
=={{header|Objeck}}== |
||
{{incomplete|Objeck|Functions to halve and double are missing.}} |
|||
{{trans|Java}} |
{{trans|Java}} |
||
<lang objeck> |
<lang objeck> |
||
Line 1,880: | Line 1,879: | ||
sum := isEven(first)? 0 : second; |
sum := isEven(first)? 0 : second; |
||
do { |
do { |
||
first := first |
first := halveInt(first); |
||
second := second |
second := doubleInt(second); |
||
if(isEven(first) = false){ |
if(isEven(first) = false){ |
||
sum += second; |
sum += second; |
||
Line 1,889: | Line 1,888: | ||
return sum; |
return sum; |
||
} |
|||
function : halveInt(num : Int) ~ Bool { |
|||
return num >> 1; |
|||
} |
|||
function : doubleInt(num : Int) ~ Bool { |
|||
return num << 1; |
|||
} |
} |
||