이 식은 다음과 같이 변환할 수 있다.

    2 * (4 + (2 + (3 + 7)))

    결과는 32다. 후위 표기법의 아름다움은 괄호 기호가 필요 없다는 데 있다. 가장 큰 장점은 번역기가 간단한 규칙 몇 개만 지키면 된다는 것이다.

    다음 항목이 숫자면 스택에 넣는다.

    다음 항목이 연산자면 스택 위에서 2개의 항목을 추출한 후 연산자를 반영하여 계산한 값을 다시 스택에 넣는다.

    이 애플리케이션의 의사 코드를 작성해 보자.

    문자열을 입력받는다.
    토큰으로 나누어서 리스트에 저장한다.
    For 리스트를 순회한다,
        If 항목이 연산자면
            스택 항목 추출(pop) 후 op2에 저장
            스택 항목 추출(pop) 후 op1에 저장
            연산 수행 및 수행 결과를 스택에 저장(push)
        Else
            스택에 실수 값으로 저장(push)
    스택 항목 추출 후 값 출력
    신간 소식 구독하기
    뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.