問題タブ [do-while]

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 投票する
3 に答える
9615 参照

php - do-whileはphpで最速のループですか?

whiledo-whileループのプロファイルを、単純なもので作成しました。

ループの前後のmicrotime()を比較します。

do-whileループは、かなりの量で最速のループです。do-whileは、実際にはwhileよりもほぼ半分高速です。私はそれらが異なる目的のためであることを知っています(ループが実行される前に条件をチェックし、do-while少なくとも1回実行されます)。

私は、一般的なコンセンサスは、whileループが眉をひそめていることを知っています。

私の質問はなぜですか?PHPアプリケーションで使用されているforループの数を考えると、使用すべきではありませ。ループが実行される前に条件をチェックするifステートメントを使用しても、パフォーマンスは大幅に向上します。

私の現在受け入れられている答えは、コードの読みやすさが疑わしいということです。

10年編集: 10年前、就職の面接でこの質問をされました。私は、whileループが眉をひそめているという誤った認識でインタビューに入りました。これは、上司からの指示に従って、コードでwhileループが許可されていなかった以前の仕事から学びました。

The interview had gone well with management, then I was handed over to the lead programmer, he asked me what the fastest loop in PHP was, which I got incorrect and I did not get the job, this is why I asked the question on SO.

10 years of experience has taught me a lot.

  1. while loops are fine (its ludicrous to think I was taught otherwise)
  2. Micro-optimizations are truly evil (profile code, focus on bottle necks)
  3. in 10 years, I have never re-written a loop for speed. I have however rewritten the logic inside the loop which was always the true bottleneck.
  4. There is a lot of strongly held but largely incorrect opinions in the programming field. Stay the course, read up, experiment and question, be open to learning from better programmers and dont be afraid to be wrong.
0 投票する
4 に答える
5581 参照

java - do-while ループのみを 2 回実行する方法は?

以下のコードを変更して、間違った PIN を 2 回しか入力できないユーザーになるにはどうすればよいですか? PIN を 2 回間違えると、プログラムは自動的に終了します。

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

loops - do-whileステートメントがない場合、Groovyを使用してinputStreamのすべてのバイトを反復処理するにはどうすればよいですか?

Groovyにdo-whileステートメントがない場合、入力ストリームのすべてのバイトを反復処理するにはどうすればよいですか?

Groovyユーザーガイドの以前のバージョンによると:

'do ... while()'構文はまだありません。

あいまいさのため、Groovyへのdo..whileのサポートはまだ追加されていません。

Groovyで次のJavaコードのようなことをするための最良の方法は何でしょうか?

(ブール値を使用してそれを実行できることはわかっています。「Groovy」の方法があるかどうかを知りたいだけです)

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

java - Java do ループ - 文字列を解決できません

Java でプログラマーが定義したメソッドを使用して、単純なサイコロを振るゲームに取り組んでいます。プログラムを少なくとも 1 回実行してから、プレーヤーにもう一度実行するかどうかを尋ねる必要があることがわかっているので、do/while ループを使用することにしました。これまで使用する必要はありませんでしたが、正しく設定したと思います。

私のコードは次のとおりです。ループ内に含まれるメイン メソッドの本体と、プログラマが定義したメソッドは除きます。

この時点で Eclipse IDE から得られるのは、「続行できません」というメッセージです。

何が起こっているかについてのアイデアはありますか?

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

c# - このループコードの何が問題になっていますか

ここに問題があります:

定数:'a'、'b'、'c'、'd';

私はたくさんの変数を持っていますが、相互に関連しているのはこれらだけです:'x'、'y'、'z';

最初の反復1には、次のものがあります。

trueの場合、プログラムは他の要素を計算します(この時点から、私は仕事を知っています)が、条件がfalseの場合、次のようになります。

繰り返しますが、falseの場合:

条件が満たされるまで、以下同様です。

私が解決しようとしているのは、最後の反復から抽出するループです(i)後の開発で使用するために「xi」と「yi」の値。条件を満たさないと抽出できません。

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

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

java - データをArrayListsに保存できませんか?

すべてのヘルプ担当者に感謝しますが、ループが実行されている以下のPatrickの提案を使用して質問の性質が変更されましたが、それぞれの配列データへの入力が格納されていないようで、次の位置に移動するのではなく、ArrayListsに置き換えられますArrayList何か提案はありますか?

0 投票する
2 に答える
1300 参照

java - このDoWhileループを別の種類のループであるwhileループに変換するにはどうすればよいですか?

これが全体の方法です。私が修正しようとしているのはこれだけです。

入力を複数回受け入れる必要があるため、何が起こるかを判断するために毎回入力が必要です。そのため、Do Whileループが好きですが、少なくとも1回に1回初期化されるため、必要以上に余分なロールが発生します。

私はこの方法でそれをやろうとしました、そしてこの方法のさまざまなバリエーション:

入力を再度要求しないため、これは機能しません。input.nextline();を入れようとすると whileループに入ると、「etherOr」は初期化されていないと表示されます。入力を入力したときに初期化しても、コマンドラインは空白のままなので、入力には何の影響もありません。

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

javascript - Javascript/JQueryランダム画像の繰り返しの問題

images /brief_images/フォルダからランダムな画像を取り込む画像ギャラリーがあります。ファイルは数字の名前で、次に.jpg、たとえば0.jpg、1.jpgなどです。0〜13のラベルが付いた14枚の画像から選択できます。画像は14枚しかなく、ページには一度に4枚必要です。 、かなりの繰り返しがありますが、避けたいと思います。Javascriptを使用してランダムな画像ファイル名を生成し、変数をJQuery .flip()コマンドに渡します。

以下のコードでdowhileループを使用してグローバル変数を変更し、グローバル変数を他の変数と比較して、最初に選択した番号がすでに使用されている場合は別の番号を選択してみました。しかし、これを機能させることはできないようです。これはスコープの問題ですか、それともコードに単純な間違いを犯しただけですか?コードは次のとおりです。

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

c - C do-while ループ

do..while ループ for: list を使用してプログラムを作成しようとして
います。

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

c++ - 無限ループに入っている間にやると思います。またはアレイ。(ランタイムエラー)

これは、オブジェクトへのポインタの配列の基本的なプログラムです。

コンパイラは、問題は「cout << name << "\n";」にあると言います

警告もあります(この警告は問題ではありません)

strcpy_s警告を削除しようとしましたが、単語が認識されません。