| src/main/java/CouponCollector.java | ●●●●● patch | view | raw | blame | history | |
| src/main/java/PrimeSieve.java | ●●●●● patch | view | raw | blame | history | |
| src/main/java/Sample.java | ●●●●● patch | view | raw | blame | history |
src/main/java/CouponCollector.java
New file @@ -0,0 +1,19 @@ public class CouponCollector { public static void main(String[] args) { int n = Integer.parseInt(args[0]); boolean[] trovato = new boolean[n]; int distinti = 0; int tentativi = 0; while (distinti < n) { int r = (int) (Math.random() * n); tentativi++; if (!trovato[r]) { trovato[r] = true; distinti++; } } System.out.println(tentativi + " tentativi"); } } src/main/java/PrimeSieve.java
New file @@ -0,0 +1,30 @@ 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); } } src/main/java/Sample.java
New file @@ -0,0 +1,30 @@ public class Sample { /* * Genera un array di interi di dimensione 'stack', * poi lo riempie con 'stack' numeri casuali * stampa i primi 'campione' numeri dell'array */ public static void main(String[] args) { int campione = Integer.parseInt(args[0]); int stack = Integer.parseInt(args[1]); int[] matrix = new int[stack]; for (int i = 0; i < stack; i++) { matrix[i] = i; } //mescola l'array for (int i = 0; i < stack; i++) { int dove = (int) (Math.random() * stack); int temp = matrix[i]; matrix[i] = matrix[dove]; matrix[dove] = temp; } for (int i = 0; i < campione; i++) { System.out.println(matrix[i]); } } }