>Java >java지도 시간 >스택을 사용하여 Java에서 간단한 계산기 기능을 구현하는 방법

스택을 사용하여 Java에서 간단한 계산기 기능을 구현하는 방법

WBOY
WBOY앞으로
2023-05-26 10:43:062087검색

1. 아이디어 분석

"7*2+100-5+3-4/2"와 유사한 간단한 중위 표현식을 입력하면 컴파일러는 우리가 작성한 코드를 사용하여 이 표현식을 표현식을 스캔하고 계산할 수 있습니다. 결과

이 표현식에는 두 가지 주요 요소가 있습니다. 하나는 숫자이고 다른 하나는 기호입니다. 그런 다음 데이터를 저장하기 위해 두 개의 스택 구조를 만들어야 합니다

  • Number stack numStack: 저장 번호

  • 기호 stackoperStack: 연산자를 저장합니다

1. 먼저 표현식을 탐색하기 위한 인덱스를 정의해야 합니다

2. 숫자가 스캔되면 숫자 스택에 직접 입력됩니다.

3.

3.1. 현재 기호 스택이 비어 있으면 스택에 직접 푸시하세요.

3.2 기호 스택에 연산자가 있으면 비교가 필요합니다

현재 연산자의 우선순위가 스택에 있는 연산자보다 작거나 같습니다, 숫자 스택에서 두 개의 숫자를 팝하고, 기호 스택에서 기호를 팝하고, 연산을 수행하고, 결과를 가져와서 그런 다음 현재 연산자를 기호 스택에 넣습니다.

현재 연산자의 우선순위가 스택의 연산자보다 크면 기호 스택에 직접 넣습니다.

4. 표현식 스캔이 완료되면, 스택에서 숫자 스택과 기호를 순차적으로 제거합니다. 스택에서 해당 숫자와 기호를 팝하고 계산을 수행합니다

5. 숫자 스택에 남아 있는 마지막 숫자는 작업의 결과입니다

2.

위 내용은 스택을 사용하여 Java에서 간단한 계산기 기능을 구현하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 yisu.com에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제