let num = 32.0
Double(num).remainder(dividingBy: 12.0)我得到了8.0的-4?..instead .从8.0减去12.0
我该怎么解决这个问题?
发布于 2018-09-24 20:41:00
remainder(dividingBy:)不是模数函数。
在实部32.0/12.0 = 2.666666...中。余数(dividingBy:)函数将与该结果最近的整数定义为q:在本例中为3。所以我们写:
32.O = q * 12 + rq为整数,r为双。
32.0 = 3 * 12.0 + r ⇒ r = - 4.0由这个函数定义的剩余的r是-4.0。
https://stackoverflow.com/questions/52486564
复制相似问题