June 2018 Update

This commit is contained in:
Ingy döt Net 2018-06-22 20:57:24 +00:00
parent ba8067c3b7
commit 22f33d4004
5278 changed files with 84726 additions and 14379 deletions

View file

@ -0,0 +1,39 @@
rmod(i, j) := mod(j, i)$
rpow(x, y) := y^x$
rpn(sexpr) := (
operands: [],
expr: charlist(sexpr),
for token in expr do (
if token = "+" then (
push(pop(operands) + pop(operands), operands)
)
elseif token = "-" then (
push(-1 * (pop(operands) - pop(operands)), operands)
)
elseif token = "*" then (
push(pop(operands) * pop(operands), operands)
)
elseif token = "/" then (
push(1 / (pop(operands) / pop(operands)), operands)
)
elseif token = "%" then (
push(rmod(pop(operands), pop(operands)), operands)
)
elseif token = "^" then (
push(rpow(pop(operands), pop(operands)), operands)
)
elseif token # " " then (
push(parse_string(token), operands)
),
if token # " " then (
print(token, " : ", operands)
)
),
pop(operands)
)$
rpn("3 4 2 * 1 5 - 2 3 ^ ^ / +"), numer;