ここに私の状況があります: 変数 (x、y、z など) を含む 2 つの数式があります。実行のためにシャント ヤード アルゴリズムを使用して、既にそれらをポストフィックスにコンパイルしましたが、数学的に等しいかどうかをテストする方法が必要です。
例:
x+5==5+x
x*2==x+x
4/(x/2)==8/x
私の最初の考えは、数千の異なるランダム入力を投げて、評価結果が同じかどうかを確認することです。
このアプローチで予測される問題: 精度の問題、NaN 状況、およびオーバーフローの可能性。
すべての計算は Java の double 型で行われます。
何か案は?:)
編集: これはカジュアル ゲーム用であるため、ソリューションは完璧である必要はありません。