我正在运行一个 for 循环,在循环内我有以下内容:
for(int i = 0; i < 12; i = i + 2){
System.out.println("i = " + i);
System.out.print("3 - i % 3 (i is at " + i + ") = " + (3 - i % 3));
System.out.println();
System.out.println("3 - i (" + (i) + ") = " + (3 - i));
}
我确实理解模数如何正常工作或处理正数,但我不明白它如何处理负整数? 谁能给我解释一下吗?
非常感谢。
最佳答案
a mod b
对于正整数 a
和 b
的定义非常明确。如果 a
或 b
为负怎么办?共有三个选项与该基本定义一致:
a mod b
始终为正。a mod b
与a
具有相同的符号。a mod b
与b
具有相同的符号。
不同的语言会选择这三种选择之一。没有单一的正确答案。
关于java - 模数如何处理负整数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22898215/