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>