你们中的任何人都知道如何检查除数余数是整数还是零?
if ( integer ( 3/2))
答案 0 :(得分:22)
你应该像这样使用模运算符
// a,b are ints
if ( a % b == 0) {
// remainder 0
} else
{
// b does not divide a evenly
}
答案 1 :(得分:3)
听起来你正在寻找的是模运算符%
,它将为你提供剩余的操作。
3 % 2 // yields 1
3 % 1 // yields 0
3 % 4 // yields 1
但是,如果你想先实际执行除法,你可能需要更复杂的东西,例如:
//Perform the division, then take the remainder modulo 1, which will
//yield any decimal values, which then you can compare to 0 to determine if it is
//an integer
if((a / b) % 1 > 0))
{
//All non-integer values go here
}
else
{
//All integer values go here
}
操作实例
(3 / 2) // yields 1.5
1.5 % 1 // yields 0.5
0.5 > 0 // true
答案 2 :(得分:0)
迅捷3:
if a.truncatingRemainder(dividingBy: b) == 0 {
//All integer values go here
}else{
//All non-integer values go here
}
答案 3 :(得分:0)
您可以使用以下代码了解它的实例类型。
var val = 3/2
var integerType = Mirror(reflecting: val)
if integerType.subjectType == Int.self {
print("Yes, the value is an integer")
}else{
print("No, the value is not an integer")
}
如果上述内容有用,请告诉我。
答案 4 :(得分:0)
快速5
if numberOne.isMultiple(of: numberTwo) { ... }
Swift 4或更少
if numberOne % numberTwo == 0 { ... }
答案 5 :(得分:-1)
Swift 2.0
(1,6)