Factors of an integer: Difference between revisions

Line 2,768:
result.append($1)
if (n/$1 != $1) { result.append(n/$1) }
}
return sorted(result)
}</lang>
Shorter version of above:
<lang Swift>import func Darwin.sqrt
 
func sqrt(x:Int) -> Int { return Int(sqrt(Double(x))) }
 
func factors(n: Int) -> [Int] {
return sorted(
filter(1...sqrt(n)) { n % $0 == 0 }
.reduce( [Int]() ) { $0 + [$1, n/$1] }
)
}</lang>
Call:
Anonymous user