public class PrimeSieve { public static void main(String[] args) { int n = Integer.parseInt(args[0]); boolean[] primo = new boolean[n + 1]; // Inizializza tutti i numeri come primi for (int i = 2; i <= n; i++) { primo[i] = true; } // Implementa il Crivello di Eratostene for (int i = 2; i * i <= n; i++) { if (primo[i]) { for (int j = i * i; j <= n; j += i) { primo[j] = false; } } } // conto tutti i numeri primi trovati int count = 0; for (int i = 2; i <= n; i++) { if (primo[i]) { count++; } } System.out.println(count + " numeri primi trovati fino a " + n); } }