Sha256: 3fa47b354520f0c3483b406002c5864b08451bfe3c399668c80cee84dbbb1516

Contents?: true

Size: 790 Bytes

Versions: 135

Compression:

Stored size: 790 Bytes

Contents

import java.util.stream.IntStream;

public final class PrimeCalculator {
    public int nth(int nth) {
        if (nth < 1) {
            throw new IllegalArgumentException();
        }

        int primesFound = 0;
        int possiblePrime = 1;

        while (primesFound < nth) {
            possiblePrime++;

            if (isPrime(possiblePrime)) {
                primesFound++;
            }
        }

        return possiblePrime;
    }

    private boolean isPrime(int n) {
        if (n == 1) {
            return false;
        }

        if (n == 2) {
            return true;
        }

        boolean divisible = IntStream
                .rangeClosed(2, (int) Math.ceil(Math.sqrt(n)))
                .anyMatch((int i) -> n % i == 0);

        return !divisible;
    }
}

Version data entries

135 entries across 135 versions & 1 rubygems

Version Path
trackler-2.1.0.54 tracks/java/exercises/nth-prime/src/example/java/PrimeCalculator.java
trackler-2.1.0.53 tracks/java/exercises/nth-prime/src/example/java/PrimeCalculator.java
trackler-2.1.0.52 tracks/java/exercises/nth-prime/src/example/java/PrimeCalculator.java
trackler-2.1.0.51 tracks/java/exercises/nth-prime/src/example/java/PrimeCalculator.java
trackler-2.1.0.50 tracks/java/exercises/nth-prime/src/example/java/PrimeCalculator.java
trackler-2.1.0.49 tracks/java/exercises/nth-prime/src/example/java/PrimeCalculator.java
trackler-2.1.0.48 tracks/java/exercises/nth-prime/src/example/java/PrimeCalculator.java
trackler-2.1.0.47 tracks/java/exercises/nth-prime/src/example/java/PrimeCalculator.java
trackler-2.1.0.46 tracks/java/exercises/nth-prime/src/example/java/PrimeCalculator.java
trackler-2.1.0.45 tracks/java/exercises/nth-prime/src/example/java/PrimeCalculator.java
trackler-2.1.0.44 tracks/java/exercises/nth-prime/src/example/java/PrimeCalculator.java
trackler-2.1.0.43 tracks/java/exercises/nth-prime/src/example/java/PrimeCalculator.java
trackler-2.1.0.42 tracks/java/exercises/nth-prime/src/example/java/PrimeCalculator.java
trackler-2.1.0.41 tracks/java/exercises/nth-prime/src/example/java/PrimeCalculator.java
trackler-2.1.0.40 tracks/java/exercises/nth-prime/src/example/java/PrimeCalculator.java
trackler-2.1.0.39 tracks/java/exercises/nth-prime/src/example/java/PrimeCalculator.java
trackler-2.1.0.38 tracks/java/exercises/nth-prime/src/example/java/PrimeCalculator.java
trackler-2.1.0.37 tracks/java/exercises/nth-prime/src/example/java/PrimeCalculator.java
trackler-2.1.0.36 tracks/java/exercises/nth-prime/src/example/java/PrimeCalculator.java
trackler-2.1.0.34 tracks/java/exercises/nth-prime/src/example/java/PrimeCalculator.java