Existe um problema na função criada pelo instrutor no exercício 1 do Desafio: praticando funções e opcional. Caso seja passado como parâmetro o valor 1 ou um valor negativo, haverá um erro de execução: Swift/arm64-apple-ios-simulator.swiftinterface:19659: Fatal error: Range requires lowerBound <= upperBound
Acredito que daria para incluir uma verificação antes usando if ou o próprio guard.
func primo(_ number: Int) -> Bool {
guard number >= 2 else {
return false
}
let start = 2
for i in start..<number {
if number % i == 0 {
return false
}
}
return true
}
primo(1) // false
primo(7) // true