Just another update
This commit is contained in:
parent
a25938f123
commit
00a190b0a6
6591 changed files with 94363 additions and 23227 deletions
|
|
@ -0,0 +1,16 @@
|
|||
function rpn(s)
|
||||
stack = Any[]
|
||||
for op in map(eval, map(parse, split(s)))
|
||||
if isa(op, Function)
|
||||
arg2 = pop!(stack)
|
||||
arg1 = pop!(stack)
|
||||
push!(stack, op(arg1, arg2))
|
||||
else
|
||||
push!(stack, op)
|
||||
end
|
||||
println("$op: ", join(stack, ", "))
|
||||
end
|
||||
length(stack) != 1 && error("invalid RPN expression $s")
|
||||
return stack[1]
|
||||
end
|
||||
rpn("3 4 2 * 1 5 - 2 3 ^ ^ / +")
|
||||
Loading…
Add table
Add a link
Reference in a new issue