問題タブ [factorial]

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

algorithm - 階乗を計算するための非再帰的アルゴリズムをどのように記述しますか?

計算するための非再帰的アルゴリズムをどのように記述しますn!か?

0 投票する
6 に答える
14684 参照

c++ - 大きな階乗を計算すると、なぜ負の数になるのですか?

簡単な手順で、階乗数を計算します。コードは次のとおりです。

さて、これはほとんどの数でうまく機能します(より迅速でエレガントなソリューションは確かにありますが、これは私にとってはうまくいきます)。ただし、250 などの大きな数値を入力すると、率直に言って、クラップアウトします。ここで、参考までに、250 の最初の 2 つの階乗 "ビット" は { 250, 62250, 15126750, 15438000, 3813186000 } です。

私のコードは { 250, 62250, 15126750, 15438000, -481781296 } を吐き出しますが、これは明らかにオフです。私が最初に疑ったのは、おそらく 32 ビット整数の限界を超えたのではないかということでしたが、2^32 が 4294967296 であることを考えると、そうは思いません。考えられる唯一のことは、おそらく符号付き32 ビットの制限に違反しているということですが、この種のことを考えられるべきではないでしょうか? 署名されていることが問題である場合、整数を符号なしにすることでこれを解決できますが、次の反復で 938043756000 が生成され、4294967296 の制限をはるかに超えるため、これは一時的な解決策にすぎません。

それで、私の問題は署名された制限ですか?もしそうなら、この問題に再び遭遇することなく、大きな数を計算するにはどうすればよいですか (私は少し前に作成した「LargeInteger」クラスを持っていますが)、この問題に再び遭遇することはありませんか?

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

awk - AWKで階乗関数を作成できません

コード

によってコマンドを実行できませんでした

私は得る

エラーメッセージはどういう意味ですか?

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

c - 階乗関数を C で動作させることができません

次のコードが機能しません。

どうすればコードを機能させることができますか?

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

c# - C#で非常に大きな整数を扱う

C#で非常に大きな整数を計算できる方法を知っている人はいますか

私は数字の階乗を計算しようとしています。

5!= 5*4*3*2*1 = 120

小さい数値ではこれは問題ではありませんが、4,294,967,295 である unsigned int の最大値の階乗を計算しようとすると、それは不可能のようです。

BigInteger クラスを調べましたが、必要なことをしていないようです

どんな助けでも大歓迎です

0 投票する
6 に答える
7079 参照

python - Python で階乗関数を作成できません

私のコード

エラーが発生します

Pythonで階乗関数を作成するにはどうすればよいですか?

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

integer - 階乗の AWK の int-limit を増やすことができません

AWK コードを実行すると、

これは、AWK が Python と同じ int IEEE 標準モジュールを使用していないことを示唆しています。AWKの限界は170!だそうです。

Python と同じくらい大きな整数を AWK に理解させるにはどうすればよいですか?

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

c# - C#: Lambda を使用した再帰関数

以下はコンパイルされません。

アクセスする前にローカル変数「fac」が初期化されていない可能性があります

ラムダを使用して再帰関数を作成するにはどうすればよいですか?

[アップデート]

また、読んでいて興味深いと思った 2 つのリンクを次に示します。

  1. Eric Lippert の「なぜ再帰的ラムダが明確な代入エラーを引き起こすのか?」
  2. C# での匿名再帰