問題タブ [loop-counter]
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.
naming-conventions - i、j、k を整数のカウンター変数名として「発明」したのは誰ですか?
重複の可能性:
ループで i をカウンターとして使用する理由
私はこれらを自分で15年以上使用していますが、どのように/どこでその習慣を身につけたかを本当に思い出せません. 非常に広く普及しているため、これらの名前を整数ループ カウンターに使用することを最初に提案/推奨したのは誰か知りたいです (K&R の本でしたか?)。
c++ - std :: size_tをいつ使用するか?
std::size_t
代わりにforループなどを使用する必要があるのではないかと思っていますint
。例えば:
一般的に、いつ使用するかに関するベストプラクティスは何std::size_t
ですか?
for-loop - Pascalがforブロック内のカウンターの変更を禁止しているのはなぜですか?
Pascalがそのように設計されたためですか、それともトレードオフがありますか?
または、for-block内のカウンターの変更を禁止または禁止しないことの長所と短所は何ですか?私見ですが、for-block内のカウンターを変更することはほとんどありません。
編集:
for-block内のカウンターを変更する必要がある1つの例を提供できますか?
両方の答えがとても良いので、wallykの答えとcartoonfoxの答えのどちらかを選ぶのは難しいです。Cartoonfoxは言語の側面から問題を分析しますが、wallykは歴史と現実の側面から問題を分析します。とにかく、あなたのすべての答えに感謝しますそして、wallykに特に感謝します。
c - float 変数をループカウンターとして使用し、「==」以外の条件で小数のインクリメント/デクリメントを使用するリスクはありますか?
以下の一見リスクのないプログラムのように、フロートをループカウンターとして使用し、反復ごとに小数ずつインクリメント/デクリメントすることは安全ですか?もちろん、フロートを==演算子のオペランドとして使用するのはばかげていることは知っていますしかし、「通常の」目的で他の比較演算のオペランドとして浮動小数点数を使用することの何が問題なのですか? 「通常」とは、フロートは数値の正確な数値表現ではないかもしれませんが、0.000000001
無関係のようなバリエーションではなく、ほとんどの場合無視できることを意味しますか? (たとえば、次のプログラムでは明らかではありません)
しかし、ここに私の懸念があります。表現が正確ではなく、5.0が実際には4.999999であるとします。したがって、反復ごとに0.5ずつ減分し続けると、最後の0との比較が偽になり、ループが終了する可能性があります。0.000001の差があり、現在の出力の最後の行は表示されません。あなたが私のドリフトを理解していることを願っています.私はどれほど間違っていますか?
出力:
c++ - char 入力の読み取りとループ カウンターに関する問題
わかりましたので、ここで大きな問題が発生しています。これに 2 日間費やした後、思うように機能しない理由がわかりません。
最初の問題: プレイヤーが ay または n を入力して、もう一度プレイしたいかどうかを確認する機能があります。n を押すと、正常に終了しますが、Y または y を押すと、y 以外の他の文字が押されるまで、もう一度再生するかどうかを尋ねるだけです。
私の 2 番目の問題であり、最も厄介なのは、推測として入力した文字が単語で使用されたかどうかを判断するために使用しているループ カウンターです (ハングマン ゲーム)。以前は機能していましたが、いくつかのマイナーな変更を加えた後、意図したとおりに機能しなくなりました。基本的に、ループ カウンターは単語内でユーザーの推測に遭遇するたびに 0 にリセットされますが、カウンターが単語の長さと等しい場合は、ユーザーの推測が見つからなかったことを意味し、表示値を次のように設定する必要があります。一を足す。ただし、現在は常にゼロのままであり、ユーザーが誤った推測を入力した場合でも、表示値が 1 増加するはずですが、ゼロのままです。この部分だけを機能させるために 2 日間費やしましたが、昨日は機能していましたが、今日は機能しませんでした。
c++ - ループが機能する/機能しない、C++ の理由がわからない
for
このコードの終わり近くのループに問題があります。
ループは絞首刑執行人ゲーム用であり、本質的に、ループは秘密の単語を使用して配列を循環しchar
、ユーザーの推測を配列内の各要素と比較しますchar
。見つかった場合は、出力を更新して文字を表示し、カウンターを 0 にリセットします。または、カウンターが秘密の単語の長さと等しい場合は、ループが見つからなかっchar
たことを意味し、両方とも表示に 1 を追加する必要があります。 (ハングマン絞首台の場合)間違った推測を間違った推測配列に配置します。
ここで私が抱えている問題は、ほとんどの場合、ループは意図したとおりに機能しますが、正しい答えを正しいものとして読み取り、間違った推測配列内に配置し、絞首台の表示値をインクリメントすることがあります。
これは一見ランダムに行われ、2 番目のゲームをプレイするときにのみ行われます。カウンターの問題だと思ったのですが、ループの開始時に0にリセットし、正しい答えが見つかった場合はループwhile
でゼロにリセットします。for
そのため、その時点でwrongChoice
のカウンターはwordLength - 1
. コードは次のとおりです。
c - forループを使用してCの変数名を変更することは可能ですか?
これは一般的な質問なので、トラブルシューティングしようとしている実際のコードはありません。しかし、私が知りたいのは、for
ループを使用して C の変数の名前を変更できるかということです。たとえば、変数名として , , , があるとpart1
しpart2
ますpart3
。part...
通過するたびにインクリメントするように、ループ カウンターにアタッチする方法はありますか? 私はいくつかのことをいじりましたが、何もうまくいかないようでした。
python - Python 3.3 内部のネストされた While ループが出力されない
進捗は遅いですが、自分に関連するプロジェクトの自己考えとteamtreehouseの利用の間にPythonを学ぼうとしています。
目標: 内側のループで 1 年間の個々のクラスの学期の費用を計算し、それを出力します。この内側のループは合計 5 回実行されます。
外側のループは、基本的な印刷物を印刷するためだけに 1 回だけ実行する必要があります。
i
(カウンター変数) を各 while ループの最初の行として定義したにもかかわらず、代わりにこのエラーが発生しますか?
エラー:
コード
loops - ステップが 1 より小さい C ループ
ステップ サイズが 1 より小さい場合、ループ内のすべてのステップが確実に実行されるようにするにはどうすればよいでしょうか。たとえば、次のループを見てください。
出力:
x = 1 に対してもループを実行するつもりですが、ご覧のとおり、実行されません。float の精度が正確ではないため、float をループ カウンターとして使用するのは安全ではないと聞いたことがあります。ループ カウンターとして float 変数を使用していることが、おそらく問題の原因です。では、私の問題にはどのような解決策がありますか? 親切なご回答ありがとうございます。