aboutsummaryrefslogtreecommitdiff
path: root/rust/nth-prime/src/lib.rs
blob: ef9d7eafa4b2c77548481a5bc5b70b610703ffb4 (plain) (blame)
1
2
3
4
5
6
7
8
fn is_prime(n: u32) -> bool {
    let limit = (n as f64).sqrt() as u32;
    (2..=limit).all(|x| n % x != 0)
}

pub fn nth(n: u32) -> u32 {
    (2..).filter(|x| is_prime(*x)).nth(n as usize).unwrap()
}