infix(2)
-
후위표기식 전환 (스택) 2
Postfix2 이전 포스트에선 postfix로 변환되어있는 수식을 계산하는 코드를 작성하였는데, 이번 포스트에선 infix로 표현된 수식을 postfix로 변환하는 소스코드를 작성하고자 한다. Condition 첫째 줄에 중위 표기식이 주어진다. 단 이 수식의 피연산자는 A~Z의 문자로 이루어지며 수식에서 한 번씩만 등장한다. 그리고 -A+B와 같이 -가 가장 앞에 오거나 AB와 같이 *가 생략되는 등의 수식은 주어지지 않는다. 표기식은 알파벳 대문자와 +, -, *, /, (, )로만 이루어져 있으며, 길이는 100을 넘지 않는다. Boj-1918 IDEA 문자열을 입력받아 앞에서부터 읽고 연산자는 스택에 넣은 후 뒤로 보낸다. 피연산자는 뒤로 보내지 않고 바로 출력한다. 괄호가 있다면 괄호도 연산자..
2021.06.18 -
후위표기식 전환 (스택이용) 1
Postfix1 정의 : 연산자를 피연산자 뒤에 표기하는 방법이다. Stack을 사용한 커퓨터의 계산을 위해서 고안된 계산법이며, 괄호가 필요 없다는 특징이 있다. infix-> postfix : infix로 표현된 수식 (a+b) * c / d + e postfix로 표현된 수식 ab+c*d/e+ postfix 수식 계산 연산자를 만나면 앞선 두개의 피연산자들을 연산자로 계산한다. i)a+bc*d/e+ ii)(a+b)*cd/e+ iii)(a+b)*(c/d)e+ iv)(a+b)*(c/d)+e Stack에서 연산 방법 피연산자가 입력되면 Stack에 넣는다 연산자가 입력되면 Stack에서 피연산자 2개를 꺼내 계산 후 결과를 Stack에 넣는다. #include #include #include typede..
2021.06.18