import Foundation
func isPrime(_ num: Int) -> Bool {
if num < 2 { return false }
if num == 2 { return true } // 2 is prime
let limit = Int(sqrt(Double(num)))
if limit < 2 { return true } // No need to check further
for i in 2...limit {
if num % i == 0 {
return false
}
}
return true
}
func findNthPrime(target: Int) -> Int {
var count = 0
var number = 1
while count < target {
number += 1
if isPrime(number) {
count += 1
}
}
return number
}
let target = 100_001
let result = findNthPrime(target: target)
print("The \(target)st prime number is: \(result)")
/*
run:
The 100001st prime number is: 1299721
*/