@@ -261,6 +261,7 @@ func do2(fileName string) (ret1 int, ret2 int) {
261261 for len (opstack ) > 0 {
262262 top := opstack [len (opstack )- 1 ]
263263 opstack = opstack [:len (opstack )- 1 ]
264+ log .Println ("RPN: push" , top )
264265 tokbuffer <- top
265266 }
266267 log .Println ("RPN: Close channel" , opstack )
@@ -274,25 +275,29 @@ func do2(fileName string) (ret1 int, ret2 int) {
274275 if v == "*" || v == "+" || v == "-" {
275276 n1 := stack [len (stack )- 1 ]
276277 n2 := stack [len (stack )- 2 ]
278+ n3 := 0
277279 stack = stack [:len (stack )- 2 ]
278280 if v == "+" {
279- n3 : = n1 + n2
281+ n3 = n1 + n2
280282 stack = append (stack , n3 )
281283 } else if v == "-" {
282- n3 : = n1 - n2
284+ n3 = n1 - n2
283285 stack = append (stack , n3 )
284286 } else if v == "*" {
285- n3 : = n1 * n2
287+ n3 = n1 * n2
286288 stack = append (stack , n3 )
287289 }
288- log .Println ("\t \t \t \t eval:" , v , stack )
290+ // log.Println("\t\t\t\teval:", v, stack, "=", n3)
291+ log .Println ("\t \t \t \t \t =" , stack )
289292 continue
290293 }
291294 num , err := strconv .Atoi (v )
292295 if err != nil {
293296 log .Fatal (err )
294297 }
298+ // log.Println("\t\t\t\teval:", v, stack)
295299 stack = append (stack , num )
300+ log .Println ("\t \t \t \t \t =" , stack )
296301 // log.Println("eval:", v, stack)
297302 }
298303 num := stack [0 ]
0 commit comments