import Foundation
func getPrimeFactors(_ n: Int) -> [Int] {
var factors: [Int] = []
var number = n
var divisor = 2
while number >= 2 {
if number % divisor == 0 {
factors.append(divisor)
number /= divisor
} else {
divisor += 1
}
}
return factors
}
let testNumbers = [124, 288, 1288]
for n in testNumbers {
let result = getPrimeFactors(n).map { String($0) }.joined(separator: " x ")
print("\(n) = \(result)")
}
/*
run:
124 = 2 x 2 x 31
288 = 2 x 2 x 2 x 2 x 2 x 3 x 3
1288 = 2 x 2 x 2 x 7 x 23
*/