zoukankan      html  css  js  c++  java
  • Algs4-1.3.11计算后序表达式的值

    1.3.11编写一段程序EvaluatePostfix,从标准输入中得到一个后序表达式,求值并打印结(将上一程序中得到的输出用管道传递给这一段各程序可以得到和Evaluate相同的行为)。
    答:
     public class EvaluatePostfix
    {
        public static void main(String[] args)
        {
            Stack<Double> s=new Stack<Double>();
            double v1;
            double v2;
            double result;
            while(!StdIn.isEmpty())
            {
                String item=StdIn.readString();
                if(item.equals("+") )
                {
                   v2=s.pop();
                   v1=s.pop();
                   result=v1+v2;
                   s.push(result);
                }
                else if(item.equals("-") )
                {
                   v2=s.pop();
                   v1=s.pop();
                   result=v1-v2;
                   s.push(result);
                }
                else if(item.equals("*") )
                {
                   v2=s.pop();
                   v1=s.pop();
                   result=v1*v2;
                   s.push(result);
                }
                else if(item.equals("/") )
                {
                   v2=s.pop();
                   v1=s.pop();
                   result=v1/v2;
                   s.push(result);
                }
                else
                {
                    StdOut.println(item);
                    s.push(Double.parseDouble(item));}
            }//end while
            StdOut.printf("result=%f ",s.peek());
        }//end main
    }//end class

  • 相关阅读:
    安全预警-防范新型勒索软件“BlackRouter”
    线程入门
    线程状态
    支付开发总结
    springboot处理date参数
    函数接口
    Excel通用类工具(一)
    Excel通用类工具(二)
    spring bean生命周期
    springboot整合netty(二)
  • 原文地址:https://www.cnblogs.com/longjin2018/p/9849360.html
Copyright © 2011-2022 走看看