Crivello di Eratostene

Il Crivello di Eratostene è un algoritmo antico e semplice che viene utilizzato per trovare tutti i numeri primi fino a un determinato numero intero.

Ecco i passaggi concettuali che spiegano il funzionamento del Crivello di Eratostene:

  1. Creazione di una lista di numeri da 2 a n: Per utilizzare il Crivello di Eratostene, prima di tutto dobbiamo creare una lista di numeri da 2 a n, dove n è il numero fino a cui vogliamo trovare i numeri primi.
  2. Iniziare dal primo numero primo: Iniziamo dal primo numero primo della lista, ovvero 2.
  3. Eliminazione dei multipli di 2: Considerando 2 come il primo numero primo, eliminiamo tutti i suoi multipli dalla lista. Ad esempio, 4, 6, 8, 10, ecc. sono tutti multipli di 2 e quindi vengono eliminati dalla lista.
  4. Passare al successivo numero primo: Passiamo al successivo numero primo nella lista, ovvero 3. In questo caso, eliminiamo tutti i multipli di 3 dalla lista, ad esempio 6, 9, 12, ecc.
  5. Continuare fino a raggiungere la fine della lista: Procediamo in questo modo finché non abbiamo eliminato tutti i multipli di tutti i numeri primi nella lista fino a raggiungere il valore n.
  6. I numeri rimasti sono i numeri primi: Alla fine del processo, tutti i numeri rimasti nella lista sono i numeri primi che stavamo cercando.
  7. Output della lista dei numeri primi: Alla fine del processo, è possibile ottenere l’elenco dei numeri primi trovati.

Il Crivello di Eratostene è un algoritmo efficiente per trovare i numeri primi, ma la sua efficacia dipende dalla dimensione della lista di numeri. In generale, è più veloce di altri algoritmi di ricerca dei numeri primi per elenchi di numeri relativamente piccoli.

Naturalmente questo procedimento può essere svolto anche da un algoritmo come questo scritto in JavaScript:

<script>
		function sieve() {
			let n = parseInt(document.getElementById("input").value);
			let primes = [];
			let isPrime = new Array(n+1).fill(true);

			for (let i = 2; i*i <= n; i++) {
				if (isPrime[i]) {
					for (let j = i*i; j <= n; j += i) {
						isPrime[j] = false;
					}
				}
			}

			for (let i = 2; i <= n; i++) {
				if (isPrime[i]) {
					primes.push(i);
				}
			}

			document.getElementById("output").innerHTML = primes.join(", ");
		}
	</script>

Abbiamo utilizzato le righe di codice per ottenere questo strumento che ci fornirà istantaneamente tutti i numeri primi minori di quello che abbiamo inserito.

Trova la frazione che genera il numero periodico

Nel nostro sito abbiamo già pubblicato alcuni articoli che spiegano come trovare la frazione generatrice di un numero periodico.

Oggi volevamo vedere se l’Intelligenza Artificiale era in grado di scrivere un codice che ci fornisse un semplice strumento per controllare se i nostri conti sono giusti.

Abbiamo prima provato a formulare la nostra richiesta in italiano ma il codice che ci proponeva funzionava solo in parte. Dopo alcuni tentativi abbiamo abbandonato la nostra lingua e siamo passati all’inglese. La scelta si è rivelata quella giusta, con pochi aggiustamenti abbiamo potuto creare quello che volevamo.

Ed ecco qui sotto lo strumento. Basta inserire il numero periodico nel formato a.b(c) dove “a” è la parte intera, “b” l’antiperiodo, “c” il periodo ricordando di utilizzare il “.” e non la “,” come separatore dei decimali. Infine dovrai cliccare sul pulsante “Converti in Frazione Generatrice“. Un’ultima osservazione, lo strumento funziona soltanto per numeri periodici cioè che abbiano il periodo racchiuso tra le parentesi () tonde.

Ad esempio se volessimo sapere quale frazione genera il numero 3,5478787878… lo scriveremo in questo modo: 3.54(78) per ottenere come frazione generatrice: che ridotta ai minimi termini diventa:

Exit mobile version
%%footer%%