問題タブ [expression-evaluation]

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.

0 投票する
9 に答える
7251 参照

c# - 左から右への式の評価

C#では、式が左から右に評価されることが保証されていますか?

例えば:

準拠していない言語はありますか?

0 投票する
3 に答える
5014 参照

c - 式を出力して評価するマクロ(__STRINGを使用)

学習とデモンストレーションには、パラメーターを出力して評価するマクロが必要です。これは非常に一般的なケースであり、FAQでさえあるかもしれませんが、実際の参照は見つかりません。

私の現在のコードは次のとおりです。

その後:

正常に動作しますが、特にプライベート__名前空間にあるため、__STRINGマクロの有効なステータスがわかりません。

だから、私の質問:

  1. このマクロを書くためのより良い方法はありますか?
  2. __STRINGは標準/大/悪ですか?
  3. 既存の検索ツールを使用して__STRINGについて検索するにはどうすればよいですか?SOの検索エンジンは、文字列を含むものを検索するだけです:-(
0 投票する
5 に答える
1900 参照

c++ - C++ での式の評価

宿題用に、Excel に似た C++ コンソール アプリを作成しています。私のアプリは、セルの数式を受け入れることができる必要があります。たとえば、次のように評価する必要があります。

また

また

また

そんな感じ。関数は、Sum、Ave、Sin、Cos、Tan、Cot、Mul、Div、Pow、Log (10)、Ln、Mod です。

それは哀れです、私は知っていますが、それは私の宿題です:'(

では、このようなものを評価するためのトリックを知っている人はいますか?

0 投票する
4 に答える
170 参照

c - C の AND/OR チェーン

私はこれについてかなり肯定的ですが、安全のために:

C 標準は、AND チェーン (A && B && ...) が左から右に評価され、その評価が 0 になるとすぐに停止することを保証しますか?

ORについても同じ質問です。(1が出たらすぐ)

他の C スタイルの言語でこれを当てにできますか?

このコードは安全ですか:

0 投票する
14 に答える
5663 参照

language-agnostic - サイコロの転がり記譜文字列を評価する

ルール

文字列をパラメーターとして受け取り、式の評価値をサイコロ表記で返す関数を作成します。これには加算と乗算が含まれます。

物事を明確にするために、法的な表現のEBNF定義を次に示します。

入力例:

  • 「3d6+12」
  • 「4*d12 + 3」
  • 「d100」

eval関数などの使用は禁止されていませんが、これらを使用せずに解決することをお勧めします。再入学大歓迎です。

出力はランダムでなければならないため、テストケースを提供することはできません;)。

回答のタイトルのフォーマット: 言語、n 文字 (重要な注意 — 評価なしなど)


私のルビーソリューション、9281 文字、eval を使用:

もう 1 つのRubyソリューションは、短くはありません (92 文字) ですが、興味深いと思います。これはまだ eval を使用していますが、今回は非常に創造的な方法です。

0 投票する
5 に答える
1564 参照

user-interface - 評価ブール論理ツリーに向けたガイダンスが必要

私は正しい方向へのポインターを見つけることができないようです、私は私が研究すべき用語が何であるかさえわかりませんが、数え切れないほどのグーグルが私を輪になって回しているようです、それでうまくいけばスタックの知性の集合的なハイブオーバーフローが役立ちます。

問題はこれです。複合論理ツリーとしか呼べないデータをフィルタリングする方法が必要です。現在、システムは単純なANDフィルタリングシステムを実装しています。たとえば、人のデータセットがあるとします。(Sex = Female)AND(Age> 23)AND(Age <30)AND(Status = Single)のすべての人を表示するように一連のフィルターを追加します。非常に簡単で、各アイテムを繰り返し処理し、すべての条件が真である場合にのみ有効なアイテムコレクションに追加します。

私が直面している問題は、関連する複雑なクエリを作成できるユーザーをどのように処理するかということです。私は、各ノードがその子を真または偽に評価する式を表すツリーのようなものを考えています。単純な例は次のようになります-((Sex == Male AND Age == 25)OR(Sex == Female AND St​​atus == Single))AND IQ>120にフィルターします。申し訳ありませんが、でより良い例を考えることはできません。瞬間。しかし、このタイプの式ツリーをどのように表現し、これらのフィルターに対してコレクション内のアイテムを評価するのでしょうか。役立つ参考資料は何ですか?地獄、ポジティブな方向につながるかもしれないいくつかの気の利いたグーグル検索は何ですか?!

助けてくれる人に感謝します。

これは、人々のデータセットを使用したツリー形式の複合クエリの例です。

  • クエリ-性別が男性で目が緑色、性別が女性、目が青色、またはステータスが単一のすべての人を表示します。パレン形式(性別==男性&&目==緑)|| (性別==女性&&(目==青||ステータス==シングル))

だから木の形でimThinking

解決策は、次のようなデータ構造で各ノードを表すことだと思います

したがって、特定のノードについて、ANDノードの場合は子を評価し、式がtrueになり、すべてのAND子がtrueと評価されるか、OR子がtrueと評価されて再帰する場合は、trueを返します。

私が投げることができるすべての概念的な条件を満たすようですが、それ以来、私はそれを実装します。この問題を他の人にとってよりよく説明するのに役立つように、実際のコードとその動作および写真を後で投稿します。

0 投票する
1 に答える
455 参照

.net - IronRuby ScriptSource.Executeスレッドは安全ですか?

IronRubyエンジンをホストすることで式エバリュエーターを実装します。あなたがここで見ることができる評価者の簡略化されたバージョン。

現在、多くのスレッドで式を実行することにより、IronRubyからより多くのパフォーマンスを取得しようとしています(そしてそれを取得しました)。1つの質問が気になります-実行メソッドのスレッドは安全ですか?

0 投票する
6 に答える
2222 参照

c# - How can I evaluate a math expression represented by a string?

It's easy to implement a "Calculator" to parse a string (e.g., 2 ^ 3 / 2) and compute the result of operations. But, is there a library already capable of doing this?

0 投票する
6 に答える
15072 参照

java - Java を使用した再帰式評価器

足し算と引き算だけを行う式評価器を書きます。それを行うための簡単なアルゴリズムがあります。しかし、私はいくつかの実装上の問題があります。

式を(文字列です)と見なしました

これが私のアルゴリズムです

私の問題は構文解析<expression1><operator>あり<expression2>、式からです。どうやってやるの?

注: コードを要求しているわけではありません。私に必要なのは、それを行うためのアイデアだけです。

ありがとうございました、

-アリ

0 投票する
4 に答える
4569 参照

java - 実行時にJava生成でブール式を評価する

Javaプログラムで実行時に生成された複雑なブール式を評価する方法は?

例:

(x と y または z) と s

x、y、z ブール変数で ...

ありがとう