問題タブ [postfix-notation]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
parsing - infix、postfix、prefix 関数などをサポートする言語を作成できなかった理由は何ですか?
私は、中置、後置、前置、または複数の単語で構成される関数の定義を許可することで、DSL の作成に非常に適した言語を作成することを熟考してきました。たとえば、中置乗算演算子を次のように定義できます (multiply(X,Y) は既に定義されています)。
または、後置の「二乗」演算子:
または、変数が散在する 2 つのキーワードを含む C または Java スタイルの三項演算子:
明らかに、そのような言語にはあいまいさの余地がたくさんありますが、(型推論で) 静的に型付けされている場合、ほとんどのあいまいさは排除され、残っているものは構文エラーと見なすことができます (括弧を追加することで修正されます)。適切な)。
これを非常に困難にする、不可能にする、または単に悪い考えにする理由があるとは思いませんか?
編集:多くの人が、これまたはこのようなことを行う可能性のある言語を指摘してくれましたが、実際には、独自のパーサーを実装する方法、またはそうする場合に発生する可能性のある問題へのポインターに興味があります。
validation - 後置表記の検証?
有効性をチェックするために、後置式 (例: 3 5 +) を含む文字列 (配列、何か) を評価する良い方法は何でしょうか?
ruby - Rubyの「後置式の評価」プログラム
Ruby で後置式を評価するための小さなスクリプトを作成しようとしました。
- この大雑把な方法または正規表現を使用せずに、式の文字が整数であるかどうかを確認するより良い方法を知りません。何か提案はありますか?
- ケースを抽象化する方法はありますか。Rubyにeval("num1 ch num2")関数はありますか?
c# - 中置から後置へのコンバータ
私はこの中置から後置/ポリス表記へのコンバーターに取り組んできました。しかし、私は解決策が適切であるとは感じていません。具体的には、j(編集:現在はインデックスと呼ばれています)変数が私を悩ませています。
何か提案はありますか?それとも、それを達成するためのはるかに良い方法がありますか?それとも私は心配しすぎですか?
math - プログラムが何かを行うことを帰納法によって証明する方法は?
私は、オペランドと演算子が後置表記で書かれた文字の配列を読み取るコンピュータープログラムを持っています。次に、プログラムは配列をスキャンして、次のようにスタックを使用して結果を計算します。
このプログラムが後置式を正しく評価することを帰納法によって証明するにはどうすればよいですか? (演習 4.16 Java のアルゴリズム (Sedgewick 2003) から取得)
c# - RPN 評価関数の最適化を支援する
私のパーサーは、最初に中置から後置に変換することによって PEMDAS 式を評価し、次に標準の後置評価規則を使用します。式を解析し、トークンをリストに保存します。プリコンパイルされた関数をキャッシュする予定なので、このプリコンパイルは問題ありません。
評価関数を最適化しようとしています (コードの Evaluate04 を参照)。私のハードウェアでは、600 ミリ秒未満で 1,000,000 件の評価を取得できます。正直なところ、これで十分速いと思います。式を取得するためのデータベース アクセス呼び出しよりもはるかに高速です。
皆さんがそれをより速くできるかどうかを見たかったのです。クラスのマイクロ最適化、完全なリファクタリング。それがどのように行われたかは問題ではありません。
これは私が取得できたのと同じくらい速いです。改善してもらえますか?
postfix-notation - 中置から後置への変換と評価
複雑な問題があります。データベースから数式を取得しているので、それらを評価する必要があります。私はそれらを修正後の変換に変換することを選択します...そしてそれらを評価します問題はそれです..私の式は次のようなものです
誰かがこれらのタイプの変換と評価の解決策を見つけることができますか...
stack - (式ツリーを使用せずに)プレフィックスをポストフィックス式に変換するにはどうすればよいですか?
スタックデータ構造を使用することで、「中置から後置」と「中置から前置」を簡単に変換できますが、前置から後置に変換できません。
はい、接頭辞を中置に変換してから、中置を後置に変換できます。しかし、プレフィックスからポストフィックスに直接変換したい。
(式ツリーではなく)実行可能な解決策はありますか?
c++ - 特定の形式に従っていない文字列から数字や文字を抽出する (後置電卓)
入力文字列から数字と文字を分離するのに問題があります。私のプログラムの目的は、後置で足し算、引き算、掛け算、割り算を行うことなので、入力フォームは2 2 3 + * (答えは 10)から2 2 + 3 * (答えは 12) まで予測できません。 . そのため、sscanf を使用して、入力文字列に特定の形式を指定せずに数字と演算子文字を抽出することはできません。ここで何をすべきですか?
java - Java 後置計算機の StackOverFlowError
次のクラスは別のプログラムで使用されています。アクセスされると、StackOverFlowError がスローされます。これは、私の大学でプロジェクトとして行う必要がある Postfix Calculator の一部です。
どんな助けでも大歓迎です、事前に感謝します。私は Java の初心者で、何をすべきかわかりません。
コード:
}