同じ動作をさせる条件において、多くの "or"(|)を避けることは可能でしょうか? - ページ 9

 
borilunad:
ありがとうございました。これからそのブラケットを試してみます!
このオプションで半減させることができました。また、一般的には、アルゴリズムの変更により、時間が長くなっている可能性があります。今はしっかりチェックする時間がないので、後でチェックして探しますありがとうございます。
 
Vinin:

でも、提供するオプションはすべてチェックする必要があります。そうでなければ、間違いを犯すかもしれません。
必ずチェックします!最初に興味を持ったのは私です!
 
PapaYozh:

警告が目の中でごちゃごちゃしないように、{}を使います。{}

if (!A && !B && !C && !D) {} //пустой оператор
else Action();


それは、かかとで後頭部を掻くようなものです :)なぜ、4つの余計な操作と余計な行があるかというと、原版がこのような形だったからです。

if (A || B || C || D) Action();
そして、トピックスターターが提供されたすべてのバリエーションの中から、あなたのバリエーションを選んだことが特に面白いです )) 。
 
Meat:


ヒールで後頭部を掻いているような感じです :)なぜ、4つの操作と1つの行を追加したのか? 結局、オリジナル版はこのような形になっています。

そして、トピックスターターが提供されたすべてのバリエーションの中から、あなたのバリエーションを選んだことが特に面白いです )) 。

私は提案されたすべてのオプションをテストし、最も速いのは次のものであることが判明した:if(A || B || C || D) Action();

時間を短縮するために、ごく稀に必要となる条件を別のブロックに作り、さらにもう一つ、時間を増やすことになるboolを使わない条件を追加しました。今のところ、デモではエラーもなく、安定して動作しています。このスレッドは公開されているので、きっと面白いことや不明なことを共有できると思います。皆さん、ありがとうございました。

 
borilunad:

私は提案されたすべてのバリエーションをテストし、最も速いのは次のものであることが判明した:if(A || B || C || D) Action();

if (A) Action(); else if (B) Action(); else if (C) Action(); else if (D) Action() こんな感じで、どうやったらもっと速くなるんだろう?

 
Meat:

if (A) Action(); else if (B) Action(); else if (C) Action(); else if (D) Action() こんな感じで、どうやったらもっと早くなるんだろう?

ごめんね、アレクセイ、今帰ってきたんだ!」。このバージョンでは、先に説明したように、Acron();は単なる実行関数ではなく、これまでのものと共通だが方向性が異なり、それに応じて必要なアクションを実行する順序も異なるいくつかの条件を含んでいるからである。お分かりのように、このバリアントではコードを重くすることができなかったのです。また、Action();が単に1つの関数の呼び出しであり、それ以上でない場合、あなたのバージョンはより速くなる可能性があるという原則には同意します。最適な解決策を探すのに協力していただき、ありがとうございました。おやすみなさい!
 
borilunad:
ごめんね、アレクセイ、今帰ってきたよ!」。この変形は適切ではありません。なぜなら、上で説明したように、Acron();は単なる実行関数ではなく、さらにいくつかの条件を含んでおり、前の条件と共通ですが方向性が異なり、それに応じて必要なアクション関数を実行する順番も異なるからです。お分かりのように、このバリアントではコードを重くすることができなかったのです。また、Action();が単に1つの関数の呼び出しであり、それ以上でない場合、あなたのバージョンはより速くなる可能性があることに原則的に同意します。最適な解決策を探すのに協力していただき、ありがとうございました。おやすみなさい!
結果は、予想通り、「シャンプーがさらにフケ防止になった!!」というカテゴリーからです。:)))
 
TarasBY:
結果は予想通り、「シャンプーがさらにフケ防止になった!!」的な感じです。:)))
もし、髪の毛のフケとコードのバグを関連付けるなら、確かに期待し、望み、達成し、興味深い解決策を探すべきですが、暴走してはいけません。
 
borilunad:
髪のフケとコードのバグを結びつけるなら、もちろん期待し、望み、達成し、面白い解決策を探すべきですが、暴走してはいけません。

そして、このプロセス(9ページ分)を「面白い解決策を見つける」と言うのですか?:)))

1ページ目には-「ヘルプ」、2ページ目以降には-「最速の方法は何か」という興味がありました。しかし、この質問に対する回答は、数値が含まれていることが前提です(すでに「実験の純度」については触れていませんが、これは得られた結果の妥当性を保証する条件です)...。その他~「シャンプー」について! :)))

 
TarasBY:

そして、このプロセス(9ページ分)を「面白い解決策を見つける」と言うのですか?:)))

1ページ目には-「ヘルプ」、2ページ目以降には-「最速の方法は何か」という興味がありました。しかし、この質問に対する答えには、数字が含まれていなければならない(私はすでに「実験の純度」については触れていない-これらは得られた結果の妥当性を保証する条件である)...。:)))

この速度の問題は、私が尊敬するフォーラムのメンバーに対処するために移動したものである "または "の多くを回避する方法..."、それが時間の損失を引き起こすと信じて。もし、ある人が自分の野心のために極論に走ったり、自分の開発を執拗に推し進めたりしても、それは個人の問題であって、私には関係ないことだ。とにかく、回答してくれた皆さん、ありがとうございました皆さんの成功を祈っています。