以前の質問からのフィードバックに基づいて、方程式の文字列表現をRPNに変換するパーサーをPHPで作成しました。それをテストしている間、私はRPNで同じものに解析する2つの異なる方程式を見つけました。それらを解決すると、RPNで同じものになるため、同じ答えが得られます。
- 3 + 4 * 8 /(1 -5)
- 3 + 4 * 8/1 -5
どちらも最終的に348*15-/ +になります。これを解くと、最初の答えは-5になりますが、2番目の答えは30になります。
では、RPNに変換する方法を誤解しましたか?私のパーサーへのコードは、前の質問への上記のリンクにあります。