【发布时间】:2017-05-06 04:22:08
【问题描述】:
我对 Swift 和编程很陌生,所以我不知道问题出在哪里。试图在现有主题中找到答案 - 找不到。提前致谢。
func smartAssigning(names: [String], statuses: [Bool], projects: [Int], tasks: [Int]) -> String {
//beginig
var collect: [Int] = [], nameLast = 0
var candidateNumber: [Int] = []
for x in 0...statuses.count {
//Defines who is working
if statuses[x] == false {
collect.append(x)
} else {}
}
// Checks for min tasks assigned among those not on vacation
let rt: Int = tasks.min()!
let rp: Int = projects.min()!
for i in collect {
if tasks[i] == rt {
candidateNumber.append(i)
} else {}
}
// if there is only 1 with min tasks - returns his number in array
if candidateNumber.count == 1 {
nameLast = candidateNumber[0]
} else {
// checks for min projects
for e in candidateNumber {
if projects[e] == rp {
nameLast = e
}
}
}
return names[nameLast]
}
smartAssigning(names: ["sd", "dfsd","dfsdf"], statuses: [true, false, false], projects: [2, 1, 1], tasks: [3, 2, 1])
屏幕:
【问题讨论】:
-
第一个错误在
for x in 0...statuses.count– 您是否尝试调试问题?单步执行函数会很快发现问题。 -
名称、状态、项目和任务数组中的元素是否都绑定在一起?例如。名字与第一个状态、第一个项目和第一个任务相关联?
-
是的,他们是。但是我发现了我的问题。感谢您和 Martin R. Damn。太简单。为什么 XCODE 不将其识别为错误?
-
@JackMov 因为这是运行时错误。
标签: arrays swift swift3 fatal-error