问题标签 [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 投票
2 回答
22674 浏览

perl - 你如何计算浮点数的 div 和 mod?

在 Perl 中,%运算符似乎假定为整数。例如:

现在你可以看到,我已经想出了一个“解决方案”来计算divmod。但是,我不明白每个参数的符号应该对结果产生什么影响。不总是积极的,是适合div的次数吗?在这种情况下,算法应该如何工作?n2n1

0 投票
5 回答
46851 浏览

python - Python 商与余数

python 2.6 文档状态x % y定义为 x / y 的余数(http://docs.python.org/library/stdtypes.html#numeric-types-int-float-long-complex)。我不清楚到底发生了什么,因为:

打印“1.0”十次,而不是我预期的“0.5、0.333333、0.25”等(1/2 = 0.5 等)。

0 投票
3 回答
36533 浏览

xslt - 如何在 XPath/XSLT 中获取数字的模数?

我想计算 XPath 中数字的模数,但这不起作用:

我该怎么做?我在这里查看了 XPath函数参考,但没有看到类似的内容。

0 投票
1 回答
7130 浏览

objective-c - Objective C中长整数的模

我正在尝试在 long long 上使用模运算符 (%),如果数字高于 unsigned int 的范围,它似乎返回 0。是否有我应该使用的运算符或函数,或者我应该自己滚动?

--更新:抱歉之前缺少示例代码,我很着急,出门了--

这是代码:

NSLog但是,当您查看该语句的输出时,您会在数字超过时看到这一点UINT_MAX(对于数字 1,111,111,111,111):

一切都是犹太洁食,直到你起身过去UINT_MAX,然后它只返回 0。

我正在使用 Xcode 3.1.2 针对 iPhone SDK 进行编译。

有任何想法吗?

0 投票
17 回答
289700 浏览

data-structures - 哈希表是如何工作的?

我正在寻找关于哈希表如何工作的解释 - 对于像我这样的傻瓜来说,用简单的英语!

例如,我知道它需要密钥,计算哈希(我正在寻找解释如何),然后执行某种模来计算它在存储值的数组中的位置,但这就是我的知识停止的地方.

有人可以澄清这个过程吗?

编辑:我不是专门询问如何计算哈希码,而是对哈希表如何工作的一般概述。

0 投票
1 回答
6172 浏览

php - PHP - 大整数 mod 计算

我需要计算大量的模数,例如:

它不起作用......因为 $largenum 对于 PHP 中的 int 来说太大了。

知道怎么做吗?

0 投票
6 回答
5659 浏览

math - c=2^N +-1 快速计算 (a*b) mod c

在 32 位整数数学中,加法和乘法的基本数学运算是隐式计算的,模 2^32,这意味着您的结果将是加法或乘法的最低位。

如果你想用不同的模数计算结果,你当然可以使用不同语言的任意数量的 BigInt 类。对于 a,b,c < 2^32 的值,您可以计算 64 位长整数的中间值,并使用内置的 % 运算符来减少到正确的答案

但是有人告诉我,当 C 的形式为 (2^N)-1 或 (2^N)+1,不使用 64 位数学或一个 BigInt 库,并且非常有效,比任意模计算更有效,并且还可以正确计算如果包含中间乘法,通常会溢出 32 位 int 的情况。

不幸的是,尽管听说这种特殊情况有快速评估方法,但我实际上并没有找到该方法的描述。“那不是在 Knuth 吗?” “这不是维基百科的某个地方吗?” 是我听到的喃喃自语。

这显然是随机数生成器中的一种常用技术,因为 2147483647 是一个等于 2^31 -1 的素数,所以它对 a*b mod 2147483647 进行乘法运算。

所以我会问专家。这个我找不到任何讨论的聪明的特殊情况乘法与mod方法是什么?

0 投票
6 回答
9207 浏览

java - Python-style integer division & modulus in C

In Python and Ruby, signed integer division truncates towards negative infinity, and signed integer modulus has the same sign the second operand:

However, in C and Java, signed integer division truncates towards 0, and signed integer modulus has the same sign as the first operand:

What is the simplest and most efficient way in C to perform the same kind of division and modulus as in Python and Ruby?

0 投票
10 回答
55336 浏览

puzzle - 检查一个数是否能被3整除

编写代码来判断一个数是否能被 3 整除。函数的输入是单个位,0 或 1,如果目前收到的数字是能被 3 整除的数字的二进制表示,则输出应为 1,否则零。

例子:

这是基于一个面试问题。我要求绘制逻辑门,但由于这是 stackoverflow,我将接受任何编码语言。硬件实现(verilog 等)的奖励积分。

第 a 部分(简单):第一个输入是 MSB。

B 部分(稍微难一点):第一个输入是 LSB。

c 部分(困难):( a) 或 (b) 哪个更快更小?(理论上不是 Big-O 意义上的,但实际上更快/更小。)现在采用较慢/较大的,并使其与更快/较小的一样快/小。

0 投票
6 回答
24868 浏览

javascript - JavaScript 中的取模 - 大数

我尝试用 JS 的模函数计算,但没有得到正确的结果(应该是 1)。这是一段硬编码的代码。

这里有什么问题?

问候, 本尼迪克特