Ethiopian multiplication: Difference between revisions

Content added Content deleted
(Added BBC BASIC)
Line 304: Line 304:
1 544
1 544
= 578
= 578

=={{header|BBC BASIC}}==
<lang bbcbasic> x% = 17
y% = 34
REPEAT
IF NOT FNeven(x%) THEN
p% += y%
PRINT x%, y%
ELSE
PRINT x%, " ---"
ENDIF
x% = FNhalve(x%)
y% = FNdouble(y%)
UNTIL x% = 0
PRINT " " , " ==="
PRINT " " , p%
END
DEF FNdouble(A%) = A% * 2
DEF FNhalve(A%) = A% DIV 2
DEF FNeven(A%) = ((A% AND 1) = 0)</lang>
Output:
<pre> 17 34
8 ---
4 ---
2 ---
1 544
===
578</pre>


=={{header|C}}==
=={{header|C}}==