問題タブ [boolean-expression]
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.
c++ - ブール式の同等性
ブール式の比較に問題があります(ORは+、ANDは*)。より正確に言うと、ここに例があります。
「A+B + C」という表現があり、「B + A+C」と比較したい。文字列のように比較することは解決策ではありません-式が一致しないことがわかりますが、これはもちろん誤りです。それらの表現を比較する方法について何かアイデアはありますか?
この問題にどのように取り組むことができるかについてのアイデアはありますか?私はあらゆる種類の提案を受け入れますが、(注として)私のアプリケーションの最終的なコードはC ++で記述されます(もちろんCも受け入れられます)。
通常の式には、括弧を含めることもできます。
(A * B * C)+DまたはA+ B *(C + D)+ X * Y
前もって感謝します、
イウリアン
c# - ブール式、なぜ2つの用語だけですか?
書くことが有効であることを考えると
それよりもいいでしょう
代わりに書く
しかし、a == bはブール値に評価され、整数と比較できないため、私はできません。
このように実装された言語設計の理由はありますか?
c# - 三項式でintを型キャストする必要があるのはなぜですか?
重複の可能性:
条件演算子は暗黙的にキャストできませんか?
私は奇妙な状況に遭遇しました、そしてなぜ私がそれをしなければならないのか知りたいです。.NET3.5を使用しています。
これは機能します:
これは動作しません:
-1を型キャストする必要があります。
三項式の違いは何ですか?-1は、shortにキャストする必要があるintであると見なされます。しかし、なぜ?
python - Python ブール式 and or
Pythonで次のようなものを書くと
ブール文が true の場合、python はスパムを返し、それ以外の場合は卵を返すように見えます。誰かがこの動作を説明できますか? 式が長いブール値のように評価されないのはなぜですか?
編集:具体的には、式の結果として「スパム」または「卵」が返されるメカニズムを理解しようとしています。
sql - 単純なブール式をSQLに変換するにはどうすればよいですか?
私は、人、病気、および薬に関する情報を含む次のデータベーステーブルを持っています。
これらの表から、どの個人がどの薬を服用し、どの病気にかかったかについての統計を実行します。これから、どのパターンが私にとってさらに掘り下げて興味深いかを理解することができます。たとえば、以下は、病気52で見つかる可能性のあるブールパターンの簡略化された例です。
編集: 別の例を次に示します。
次に、このパターンをSQLクエリに変換して、このパターンに一致するすべての人を見つけたいと思います。
たとえば、PERSON_Tで、病気にかかっていて((症状が現れる前に薬234と26を服用しなかったが、症状が現れる前に薬474を服用した)または(症状が現れる前に薬371を服用した)すべての人を見つけたいと思います。 、しかし症状を示す前に薬物791および395ではない))
このパターンを元のクエリに戻すにはどうすればよいですか?
これが私の最初の試みですが、私は最初の用語で立ち往生しています:
PostgreSqlで機能するにはこれが必要ですが、特定の回答を特定のデータベースからPostgreSqlに変換できると思います。
コメントへの回答
- データベーステーブルのフォーマットを修正しました。ありがとうございました。
- 任意のブール式を取り、それをSQLに変換できる必要があります。実際に作成しているブールステートメントは、私が示した例よりもはるかに長くなっています。私が作成する新しいテーブルはすべて新しいデータベースにあり、元のテーブルと同じスキーマを持っている必要があります。このようにしてエンドユーザーは、新しいテーブルで同じコードを実行でき、元のテーブルで実行した場合と同じように機能します。これはお客様からの要求です。元のテーブルへの単なるクエリであるビューを作成できることを望んでいます。それが機能しない場合は、テーブルのコピーを作成し、新しいテーブルにコピーするときにデータをフィルタリングすることがあります。分析にはニューラルネットワークを使用していません。ニューラルネットワークよりもはるかに優れた拡張性を備えた独自のカスタムアルゴリズムを使用しています。
- Disease_Start_Dateは、人が病気にかかった日付であり、症状が現れ始めたときに発生する可能性があります。Disease_End_Dateは、人が回復したときであり、症状が消えたときに発生する可能性があります。
- Drug_start_dateは、その人が薬の服用を開始したときです。Drug_end_dateは、人が薬の服用をやめたときです。
編集 私は自分の答えを追加しました。誰かがもっと簡単な答えを思い付くことができますか?
c++ - C++ 検索テキスト n ブールモード
基本的に2つの質問があります。
1. mysql のように全文ブール検索を行う C++ ライブラリはありますか。たとえば、
私が持っているとしましょう:
2. テキスト内の語句を検索することはできますか。例えば、
p>
language-agnostic - 3 つの値の XOR
三方排他的 OR を行う最も簡単な方法は何ですか?
つまり、3 つの値があり、3 つの値のうち 1 つだけが true の IFF と評価されるステートメントが必要です。
これまでのところ、これは私が思いついたものです:
((a ^ b) && (a ^ c) && !(b && c)) || ((b ^ a) && (b ^ c) && !(a && c)) || ((c ^ a) && (c ^ b) && !(a && b))
同じことをもっと簡単にできるものはありますか?
上記がタスクを達成することの証明は次のとおりです。
java - Javaは、このブール式を私が望む方法で解釈しますか?
これは私が欲しいものです:これは!A || (A && B && C)
オリジナルと同等ですか?!A || A && B && C
なぜまたはなぜそうではないのですか?
perl - Perl スクリプトの if-elsif-else ブロックの何が問題になっていますか?
ネストされた if ステートメントの条件を記述しようとしていますが、if ステートメントで or を使用する良い例が見つかりません。次のelsif
条件は失敗し、その下にネストされたコードが次の場合に起動され$status == 6
ます。
ここに実際に存在するコードは数行の長さであるため、条件ごとに別の elsif を使用することは避けたいと思います。
python - Python の「ブール」演算 (例: and/or 演算子)
このメソッドは、単語文字の最初のグループ (つまり: ) を検索し、[a-zA-Z0-9_]
最初に一致したグループを返すかNone
、失敗した場合に返します。
同じ関数を次のように書き換えることができます。
これは同じように機能し、文書化された動作です。このページには次のように明確に記載されています。
式
x and y
は最初に評価されx
ます。が false の場合x
、その値が返されます。それ以外の場合y
は評価され、結果の値が返されます。
ただし、ブール演算子であるため(マニュアルにもそう記載されています)、and
ブール値を返すことを期待していました。その結果、これが(どのように)機能するかを知ったとき 、私は驚きました。
これの他のユースケースは何ですか、および/またはこのかなり非直感的な実装の理論的根拠は何ですか?