Chemical calculator: Difference between revisions

Line 674:
while stack.len > 0: result.add stack.pop()
 
proc pass3(s:string): Table[string,int] = # H 2 * O +"H2O" => { H:2, O:1 }
let rpn: seq[string] = pass2 s
var stack: seq[Table[string,int]] = @[]
Line 711:
return stack.pop()
 
proc pass4(s: string) : float = # { H:2, O:1 }"H2O" => 18.015
let atoms: Table[string,int] = pass3 s
for key in atoms.keys: