我得到这个:
“线程1:致命错误:被零除”
在calculus()
中,不知道为什么。
我已经处理了大约10个小时。我究竟做错了什么?我该如何解决?
class RegularFile {
var rrLevelProgressXP : Int
var rrNextLevelXP : Int
var rrLevel : Int
var rrNextLevel : Int
var rrconsistency : Int
var rrskill : Int
var rrworkquality : Int
var rrworktime : Int
var rrProgressPercent : Float
init() {
self.rrLevelProgressXP = 15
self.rrNextLevelXP = 0
self.rrLevel = 0
self.rrNextLevel = 0
self.rrconsistency = 0
self.rrskill = 0
self.rrworkquality = 0
self.rrworktime = 0
self.rrProgressPercent = 0.0
}
func calculus() {
rrProgressPercent = Float(((rrLevelProgressXP * 100) / rrNextLevelXP) / 100)
}
if rrLevelProgressXP == 0 && rrLevelProgressXP <= 9 {
rrLevel = 0
rrNextLevel = 1
rrNextLevelXP = 10
} else if rrLevelProgressXP == 10 && rrNextLevelXP <= 24 {
rrLevel = 1
rrNextLevel = 2
rrNextLevelXP = 25
// more of the same
但是为什么不能为零?您将其设置为零,不是吗?您是否为其分配了其他任何值?
self.rrNextLevelXP = 0 // <<----- set to zero
...
rrProgressPercent = Float(((rrLevelProgressXP * 100) / rrNextLevelXP) / 100)
^^^^^^^^^^^^^ divide by zero