問題タブ [modulo]

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 に答える
36533 参照

xslt - XPath/XSLTで数値のモジュラスを取得するには?

XPath で数値のモジュラスを計算したいのですが、うまくいきません:

どうすればいいですか?ここでXPath関数のリファレンスを見ましたが、そのようなものは見当たりませんでした。

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

objective-c - Objective C での long long 整数のモジュロ

long long でモジュロ演算子 (%) を使用しようとしていますが、数値が unsigned int の範囲を超えている場合は 0 を返すようです。代わりに使用する必要がある演算子または関数はありますか、それとも自分でロールする必要がありますか?

-- 更新: 以前はサンプル コードがなくて申し訳ありませんでした。私は急いでドアを出ました --

コードは次のとおりです。

NSLogただし、そのステートメントによって作成された出力を見るとUINT_MAX、数値が 1,111,111,111,111を超えると次のようになります。

過去に到達するまではすべてコーシャUINT_MAXであり、その後は 0 を返します。

Xcode 3.1.2 を使用して iPhone SDK に対してコンパイルしています。

何か案は?

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

php - PHP - 大きな整数 mod 計算

次のような大きな数値でモジュラスを計算する必要があります。

$largenum が PHP の int には大きすぎるため、機能していません。

これを行う方法はありますか?

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

math - c=2^N +-1 の (a*b) mod c をすばやく計算する

32 ビット整数演算では、加算と乗算の基本的な演算は暗黙的に mod 2^32 で計算されます。つまり、結果は加算または乗算の最下位ビットになります。

異なるモジュラスで結果を計算したい場合は、異なる言語で任意の数の BigInt クラスを使用できます。値 a,b,c < 2^32 の場合、中間値を 64 ビット long int で計算し、組み込みの % 演算子を使用して正しい答えに減らすことができます。

しかし、C が (2^N)-1 または (2^N)+1 の形式の場合に a*b mod C を効率的に計算するための特別なトリックがあり、64 ビット演算またはBigInt ライブラリであり、任意のモジュラス評価よりも非常に効率的であり、中間乗算を含めた場合に通常 32 ビット int をオーバーフローするケースも適切に計算します。

残念ながら、そのような特殊なケースには迅速な評価方法があると聞いていますが、実際には方法の説明を見つけていません。「それはクヌースにありませんか?」「それはウィキペディアのどこかにありませんか?」私が聞いたつぶやきです。

2147483647 は 2^31 -1 に等しい素数であるため、これは a*b mod 2147483647 の乗算を行う乱数発生器では明らかに一般的な手法です。

そこで専門家に聞いてみます。私が議論を見つけることができないこの巧妙な特殊なケースの乗算と mod の方法は何ですか?

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

java - CでのPythonスタイルの整数除算とモジュラス

Python と Ruby では、符号付き整数の除算は負の無限大に向かって切り捨てられ、符号付き整数のモジュラスは 2 番目のオペランドと同じ符号になります。

ただし、C および Java では、符号付き整数除算は 0 に向かって切り捨てられ、符号付き整数モジュラスは最初のオペランドと同じ符号を持ちます。

CでPythonやRubyと同じ種類の除算とモジュラスを実行する最も簡単で効率的な方法は何ですか?

0 投票する
10 に答える
55336 参照

puzzle - 数値が 3 で割り切れるかどうかを調べる

数値が 3 で割り切れるかどうかを判断するコードを記述します。関数への入力は 0 または 1 の単一ビットであり、これまでに受け取った数値が 3 で割り切れる数値のバイナリ表現である場合、出力は 1 である必要があります。ゼロ。

例:

これはインタビューの質問に基づいています。論理ゲートの図面をお願いしますが、これはスタック オーバーフローであるため、任意のコーディング言語を受け入れます。ハードウェア実装 (verilog など) のボーナス ポイント。

パート a (簡単):最初の入力は MSB です。

パート b (少し難しい):最初の入力は LSB です。

パート c (難しい): (a) と (b) では、どちらが速くて小さいですか? (理論的には Big-O の意味ではありませんが、実際にはより速く/より小さくなります。) 次に、より遅く/より大きなものを取り、より速く/より小さなものと同じくらい速く/小さくします。

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

javascript - JavaScript のモジュロ - 多数

JS の modulo 関数で計算しようとしましたが、正しい結果が得られません (1 になるはずです)。これはハードコードされたコードです。

ここで何が問題なのですか?

よろしく、 ベネディクト