为什么Modulo Operator在Kotlin中无法按预期工作?

时间:2019-06-15 20:16:46

标签: kotlin modulo modulus modular-arithmetic

我是编程的新手,试图了解这个问题的幕后情况。

Microsoft的程序员计算器和科学计算器使用相同的输入提供不同的结果。例如,-5 % 10 = -5位于程序员计算器中,而-5 % 10 = 5位于科学计算器中。

fun getRemainder(dividend: Double, divisor: Double){
    var remainder = dividend % divisor
    return println("$remainder")

}

fun main() {
    getRemainder(-5.0, 10.0)
}

我希望-5 % 10的输出为5,但实际输出为-5,即使它不在可能的答案为0..9的范围内。为什么?

数字行

使用科学计算器得出的x % 5-x % 5的结果

-5 -4 -3 -2 -1 0 1 2 3 4 5红利

_ 0 1 2 3 4 0 1 2 3 4 0结果

使用编程计算器得出x % 5-x % 5的结果

-5 -4 -3 -2 -1 0 1 2 3 4 5红利

_ 0 -4 -3 -2 -1 0 1 2 3 4 0结果

0 个答案:

没有答案