Arithmetic/Integer: Difference between revisions
Content added Content deleted
(Added Piet Example) |
m (→{{header|Piet}}: added line breaks, final push command) |
||
Line 1,198: | Line 1,198: | ||
(prinl "Power " (** A B)) )</lang> |
(prinl "Power " (** A B)) )</lang> |
||
=={{header|Piet}}== |
=={{header|Piet}}== |
||
[[File:PietArithmaticInteger.png]] |
[[File:PietArithmaticInteger.png]]<br> |
||
<code> |
<code> |
||
command stack |
command stack<br> |
||
in(int) A |
in(int) A<br> |
||
duplicate AA |
duplicate AA<br> |
||
duplicate AAA |
duplicate AAA<br> |
||
duplicate AAAA |
duplicate AAAA<br> |
||
duplicate AAAAA |
duplicate AAAAA<br> |
||
in(int) BAAAAA |
in(int) BAAAAA<br> |
||
duplicate BBAAAAA |
duplicate BBAAAAA<br> |
||
duplicate BBBAAAAA |
duplicate BBBAAAAA<br> |
||
duplicate BBBBAAAAA |
duplicate BBBBAAAAA<br> |
||
duplicate BBBBBAAAAA |
duplicate BBBBBAAAAA<br> |
||
push 9 9BBBBBAAAAA |
push 9 9BBBBBAAAAA<br> |
||
push 1 19BBBBBAAAAA |
push 1 19BBBBBAAAAA<br> |
||
roll BBBBAAAABA |
roll BBBBAAAABA<br> |
||
push 7 7BBBBAAAABA |
push 7 7BBBBAAAABA<br> |
||
push 1 17BBBBAAAABA |
push 1 17BBBBAAAABA<br> |
||
roll BBBAAABABA |
roll BBBAAABABA<br> |
||
push 5 5BBBAAABABA |
push 5 5BBBAAABABA<br> |
||
push 1 15BBBAAABABA |
push 1 15BBBAAABABA<br> |
||
roll BBAABABABA |
roll BBAABABABA<br> |
||
push 3 3BBAABABABA |
push 3 3BBAABABABA<br> |
||
push 1 13BBAABABABA |
push 1 13BBAABABABA<br> |
||
roll BABABABABA |
roll BABABABABA<br> |
||
add (A+B)BABABABA |
add (A+B)BABABABA<br> |
||
out(int) BABABABA |
out(int) BABABABA<br> |
||
sub (A-B)BABABA |
sub (A-B)BABABA<br> |
||
out(int) BABABA |
out(int) BABABA<br> |
||
mult (A*B)BABA |
mult (A*B)BABA<br> |
||
out(int) BABA |
out(int) BABA<br> |
||
divide (A/B)BA |
divide (A/B)BA<br> |
||
out(int) BA |
out(int) BA<br> |
||
mod (A%B) |
mod (A%B)<br> |
||
out(int) NULL |
out(int) NULL<br> |
||
push 1 1<br> |
|||
exit</code> |
exit</code><br> |
||
How rounding is handled is up to the interpreter, but I believe the intent was round towards 0. |
How rounding is handled is up to the interpreter, but I believe the intent was round towards 0. |
||
=={{header|PL/I}}== |
=={{header|PL/I}}== |
||
<lang PL/I> |
<lang PL/I> |