問題タブ [infinite-loop]

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

delphi - NevronaRaveの無限の印刷ループのバグを修正する方法

NevronaDesignsのRaveReports は、 Embarcaderoの DelphiIDEで使用するためのレポートエンジンです。

これは私がRaveEndlessLoopバグと呼んでいるものです。Delphi2006にバンドルされているRaveReportsバージョン6.5.0(VCL10)には、多くのRaveレポート開発者を悩ませている悪意のあるバグがあります。空でないデータセットがあり、このデータセットのデータ行がページに正確に収まる場合(つまり、未亡人の行がゼロの場合)、PrintPreview時に、Raveはページを生成する無限ループでスタックします。

この問題は、このニュースグループの次の見出しで以前に報告されています。

  1. "エラー:無限ページの生成"; ヒューゴヒラム2006年9月20日20:44
  2. "レイブループのバグ。助けてください"; トーマス・ラザール2006年11月7日19:35
  3. "データの全ページをループしますか?"; TonyChistiansen2004年12月23日15:41
  4. 別の申立人による(3)への返信。オリバーピシェ
  5. "エンドレスロッププリントバグ"; Richso2004年9月11日16:44

これらの投稿のそれぞれで、Nevronaからの応答はなく、解決策は報告されていません。

おそらく、この問題は関連ニュースグループ(nevrona.public.rave.reports.general)でも報告されており、次のようになっています。Jobard 20/11/2005(6)がRave Endlessループのバグなのか、それとも別の問題なのかはわかりませんが。この投稿はNevronaから返信がありましたが、未亡人がいないという問題よりも、複数の地域(「ページ分割を超える複数の地域を使用すると問題が発生します」)に関連していました。

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

c++ - C++での無限ループ

私はC++を学び、小さなプログラムを書いています。以下はそのようなプログラムの1つです。

このプログラムを実行し、入力を適度に小さい絶対値に保つと、期待どおりに動作します。しかし、10000000000などのより大きな入力を入力すると、プログラムは同じ出力を繰り返し吐き出します。入力の組み合わせによっては、動作が不安定になります。例えば:

プログラムは、殺されるまで「10->」を吐き出します。(この特定の入力シーケンスでは、プログラムの出力の速度が不規則に変化します。)また、大きな値の出力は、現在の不正な入力の値だけでなく、以前の正当な入力によって決定されることに気付きました。

どうしたの?(私はプログラムを修正することを気にしません、それは簡単です。私はそれを理解したいです。)

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

algorithm - Brainfuck プログラムで無限ループを検出する

私は、MATLAB スクリプト言語で単純な頭のおかしいインタープリターを作成しました。(遺伝的アルゴリズム プロジェクトの一部として) 実行するランダムな bf プログラムが与えられます。私が直面している問題は、プログラムにかなりの数のケースで無限ループがあることが判明したため、GA がその時点で動かなくなることです。
したがって、無限ループを検出し、そのコードを bf で実行しないようにするメカニズムが必要です。
明らかな(些細な)ケースの1つは、私が持っている場合です

私はこれを検出し、そのプログラムの実行を拒否できます。
自明ではないケースについては、基本的な考え方は、ループの 1 回の反復で現在のセルがどのように変化するかを判断することであることがわかりました。変化が負の場合、最終的に 0 に到達するため、有限ループです。それ以外の場合、変化が負でない場合、それは無限ループです。
これを実装するのは、単一のループの場合は簡単ですが、ネストされたループでは非常に複雑になります。例えば ​​(以下の (1) はセル 1 の内容などを指します )

したがって、コードは何度も実行されます。ただし、セル 1 で行われた + と - の数の単純なチェックでは、- の数が多いと判断されるため、無限ループは検出されません。
bf で任意の数のループが任意にネストされている場合、無限ループを検出するための優れたアルゴリズムを考えられる人はいますか?

編集:停止の問題が一般的に解決できないことは知っていますが、特別なケースの例外が存在しないかどうかはわかりませんでした。同様に、Matlab は bf プログラムの停止を判断できるスーパー チューリング マシンとして機能するかもしれません。私はひどく間違っているかもしれませんが、もしそうなら、その方法と理由を正確に知りたいです.

2 番目の編集: 無限ループ検出器であると主張するものを書きました。おそらくいくつかのエッジケースを見逃しています(または、おそらくチューリング氏のクラッチから逃れる可能性は低いです)が、今のところ私にとってはうまくいくようです。疑似コード形式では、次のようになります。

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

vb.net - VB.NET 無限 For ループ

VB.NET で無限 for ループを記述することは可能ですか?

もしそうなら、構文は何ですか?

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

xml - Actionscript3でXMLをトラバースする際の無限ループ

コードをこれに絞り込みました(色付けは無視してください)。

どういうわけか、これは「単語」を何度も何度も無期限に出力します。理由について何か考えはありますか?私は少し練習から外れていて、それが何か明白なことだと感じていますが、私は困惑しています。

ありがとう、キャメロン

0 投票する
7 に答える
295 参照

asp.net - なぜこれが無限にループするのですか?

だから私は今日自分のサイトをサーバーからキックオフさせたところですが、この機能が原因だと思います。誰かが問題が何であるか教えてもらえますか?私はそれを理解できないようです:

0 投票する
8 に答える
2296 参照

mvvm - この無限ループを回避するにはどうすればよいですか?

これには半単純な解決策があるに違いないように感じますが、私には理解できません。

編集:前の例は無限ループをより明確に示しましたが、これはもう少しコンテキストを与えます。問題の概要については、事前編集を確認してください。

次の2つのクラスは、モデルビュービューモデル(MVVM)パターンのビューモデルを表します。

要求されない限り、モデル(レシピとカテゴリ)を表示することはしませんが、基本的にビジネスロジックを処理します(たとえば、カテゴリにレシピを追加すると、リンクのもう一方の端も追加されます。つまり、カテゴリにレシピ、そしてレシピもそのカテゴリに含まれています)そして基本的に物事がどうなるかを指示します。ViewModelsは、WPFデータバインディングのための優れたインターフェイスを提供します。それがラッパークラスの理由です

無限ループはコンストラクター内にあり、新しいオブジェクトを作成しようとしているため、どちらのオブジェクトも作成が完了しないため、これを防ぐためにブールフラグを設定することはできません。

私が考えているのは(シングルトンとして、またはコンストラクターに渡されるか、あるいはその両方として)aDictionary<Recipe, RecipeViewModel>でありDictionary<Category, CategoryViewModel>、ビューモデルを遅延ロードしますが、ビューモデルが既に存在する場合は新しいモデルを作成しませんが、私は理解していません遅くなってからうまくいくかどうか試してみると、過去6時間ほどこれに対処するのにちょっとうんざりしています。

手元の問題とは関係のないものをたくさん取り出したので、ここのコードがコンパイルされる保証はありません。

0 投票する
12 に答える
1228 参照

c++ - 無限ループは悪い形ですか?

そのため、BFS アルゴリズムでノードをバックトラッキングするための C++ コードがいくつかあります。次のようになります。

しかし、while (true)私には疑わしいようです。私はこのコードが機能することを知っており、論理的に機能するはずであることを知っています。ただし、 に何らかの条件が必要であるという気持ちを揺るがすことはできませんwhileが、実際に可能な唯一の方法は、bool変数を使用して、それが完了したかどうかを示すことです。心配するのをやめるべきですか?それとも、これは本当に悪い形ですか?

編集:これを回避する方法があることに気づいてくれてありがとう。ただし、他に有効なケースがあるかどうかを知りたいです。