Java 模的所有可能结果?

Java 模的所有可能结果?,java,math,modulus,Java,Math,Modulus,表达式(n%m)的所有可能结果是什么,其中n和m是整数变量 我认为它是0到(m-1),但不确定。假设m是一个正整数,如果可能的值范围是-min(abs(n),m-1)到min(abs(n),m-1) 因此,如果n为零或正,且大于m(典型情况),则范围将为0到m-1 如果n为零或负且其绝对值大于m,则范围将为-(m-1)到0,包括在内 在所有情况下,如果n的绝对值低于m,则上面由m-1设置的界限由n设置。也就是说,如果n为零或正且小于m,则范围为0到n,包括在内(以此类推)。假设m为正整数,如果可

表达式
(n%m)
的所有可能结果是什么,其中
n
m
是整数变量


我认为它是
0
(m-1)
,但不确定。

假设
m
是一个正整数,如果可能的值范围是
-min(abs(n),m-1)
min(abs(n),m-1)

因此,如果
n
为零或正,且大于
m
(典型情况),则范围将为
0
m-1

如果
n
为零或负且其绝对值大于
m
,则范围将为
-(m-1)
0
,包括在内


在所有情况下,如果
n
的绝对值低于
m
,则上面由
m-1
设置的界限由
n
设置。也就是说,如果
n
为零或正且小于
m
,则范围为
0
n
,包括在内(以此类推)。

假设
m
为正整数,如果可能的值为
-min(abs(n),m-1)
min(abs(n),m-1)
,包括在内

因此,如果
n
为零或正,且大于
m
(典型情况),则范围将为
0
m-1

如果
n
为零或负且其绝对值大于
m
,则范围将为
-(m-1)
0
,包括在内


在所有情况下,如果
n
的绝对值低于
m
,则上面由
m-1
设置的界限由
n
设置。也就是说,如果
n
为零或正且小于
m
,则范围为
0
n
,包括在内(依此类推)。

n%m的结果可以在范围-m、+m[

原因:java中模运算符的定义类似于所有int值n和m,以下必须始终为真:(n/m)x m+(n%m)==n

但如果n为负,
(n/m)*m始终等于或大于n,因此
n%m
必须为负才能满足上述等式


规则是:余数运算的结果(如果非零)始终与左操作数具有相同的符号。

n%m
的结果可以在-m、+m[

原因:java中模运算符的定义类似于所有int值n和m,以下必须始终为真:(n/m)x m+(n%m)==n

但如果n为负,
(n/m)*m始终等于或大于n,因此
n%m
必须为负才能满足上述等式

规则是:余数运算的结果(如果非零)总是与左操作数具有相同的符号。

让我们举个例子 对于正n和m,你的答案是正确的,但在这里有些情况下

-1%10=-1
-1%-10=-1
1%-10=1
1%10=1
介于
0到m-1之间的正%正返回值

负%当n时,负返回值介于'0'之间让我们举个例子 对于正n和m,你的答案是正确的,但在这里有些情况下

-1%10=-1
-1%-10=-1
1%-10=1
1%10=1
介于
0到m-1之间的正%正返回值



负%负返回值介于“0”之间,当n我不理解您的问题时。只有一个结果..即..
n%m
。它们是正整数吗?我想知道可能出现的结果范围,答案可能是n%m的值范围。此问题似乎与主题无关,因为它属于此问题关于Java的%运算符是关于SO的主题,不属于math.stackexchange。投票重新打开。我不理解你的问题。只有一个结果..那就是..
n%m
。它们是正整数吗?我想知道可能出现的结果范围,答案可以是n%m的值范围。这个问题出现了因为它属于这个关于Java的%运算符的问题,所以它属于SO的主题,不属于math.stackexchange。投票重新打开。但是
n%m
是..
n%m
。结果会有什么不同?@MarounMaroun:这个问题是关于
n
可能值范围内的理论结果>和
m
。但是
n%m
是..
n%m
。结果如何不同?@marounnaroun:问题是关于
n
m
可能值范围内的理论结果。如果
n
小于
m
?@T.J.Crowder,那么结果就是n本身。版本在编辑正确之前,为什么要更改它?
[-m,+m]
在技术上是正确的,但并不理想,因为结果不能等于
m
-m
@Joni不知道为什么括号会翻转。不是故意的。修复了它。如果
n
小于
m
?@t.J.Crowder,那么结果就是n本身。编辑之前的版本是正确的,为什么要更改它?
[-m,+m]
在技术上是正确的,但并不理想,因为结果不能等于
m
-m
@Joni不知道括号为什么会翻转。不是故意的。已修复。