Here’s a problem that you some times come across in problem sets and job interviews:

*Q. Write a program to generate all the prime numbers up to N.*

The simplest algorithm I can think of is the Sieve of Eratosthenes.

Here’s my attempt:

```
public class PrimeSieve { public static void main(String[] args) { int N = Integer.parseInt(args[0]); boolean[] isPrime = new boolean[N+1]; Arrays.fill(isPrime, true); int max = (int)Math.sqrt(N); for (int i=2; i<=max; i++) { if (isPrime[i]) { // Remove all of the multiples of i for (int j=2; i*j<=N; j++) { isPrime[i*j] = false; } } } // List the primes for (int k=2; k<=N; k++) { if (isPrime[k]) System.out.print(k+" "); } } }
```

That's all. You can leave now.