Egyptian division: Difference between revisions

m (→‎{{header|Quackery}}: replaced bit shifts with addition after reading discussion for this page.)
Line 1,819:
{{out}}
<pre>580 divided by 34 using the Egyptian method is 17 remainder 2</pre>
 
=={{header|Mathematica}}/{{header|Wolfram Language}}==
<lang Mathematica>ClearAll[EgyptianDivide]
EgyptianDivide[dividend_, divisor_] := Module[{table, i, answer, accumulator},
table = {{1, divisor}};
i = 1;
While[Last[Last[table]] < dividend,
AppendTo[table, 2^i {1, divisor}];
i++
];
table //= Most;
answer = 0;
accumulator = 0;
Do[
If[accumulator + t[[2]] <= dividend,
accumulator += t[[2]];
answer += t[[1]]
]
,
{t, Reverse@table}
];
{answer, dividend - accumulator}
]
EgyptianDivide[580, 34]</lang>
{{out}}
<pre>{17, 2}</pre>
 
=={{header|Modula-2}}==
1,111

edits