package esercitazione1; import java.util.Scanner; public class Esercizio4alt { public static void main(String[] args) { Scanner in = new Scanner(System.in); System.out.println("Quanti numeri primi vuoi trovare a partire da 1?"); int n = in.nextInt(); System.out.println("I primi " + n + " numeri primi sono:"); if (n > 0) { System.out.println("1) " + 1); } if (n > 1) { System.out.println("2) " + 2); } if (n > 2) { int num = 3; // 1 e 2 li ho già stampati int counter = 2; int i; boolean isPrime; while (counter < n) { // finchè non arrivo a N i = 2; isPrime = true; while (i < num) { // devo dividere il numero corrente (num) per tutti i numeri compresi fra 2 e se stesso - 1 if (num % i == 0) { isPrime = false; break; // è inutile continuare nel ciclo se ho già trovato un divisore } else { i++; } } if (isPrime) { // se non ho trovato divisori la variabile isPrime è rimasta true counter++; System.out.println(counter + ") " + num); } num++; } } } }