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}}== |