1

진 사이에 지정합니까 후위를 붙이면 작동합니다! 단항을 포함하지 않는 것을 제외하고 - 무의미한 것을 의미하고 단항 +는 실제로 많은 것을하지 않습니다., 어떻게 당신은 uniary이 문법에서 +/-

일단 수정본으로 변환하면 단항 +는 p가되고 단항은 -가됩니다. 예를 들어 내가 중위 식을 읽고 있습니다 경우

3 + 3  ->  3 3 + 
+3 + 3 ->  3 p 3 + 
-(3-3) ->  3 3 - m 

을 그래서, 어떻게 단항 및 이진 양극과 음극 사이에 지정합니까?

+0

"P"? 승인. 음, 단항 + 또는 -는 항상 숫자 앞에 있으므로 숫자 바로 뒤에있는 단항 기호를 찾으면 이진 부호임을 확신 할 수 있습니다. 하지만 지금은 이것을 쓰고 있습니다. 너무 단순하게 들립니다. 나는 shunting-yard 알고리즘을 살펴볼 것이다. –

답변

0

다음 규칙이 적용됩니다.

비 연산자 뒤에 오는 첫 번째 + 또는 은 이진 연산자입니다. 후속 어커런스 (또는 표현식의 시작에서 발생)는 단항입니다.

그래서, 당신의 예 (추가와 두)에서 : 양성 및 "M"부정에 대한

3 + 3    --> 3 binary+ 3 
+ 3 + 3   --> unary+ 3 binary+ 3 
- (3 - 3)  --> unary- (3 binary- 3) 
-9--4    --> unary- 9 binary- unary- 4 
관련 문제