Un programmino (applet java) per verificare se un numero è primo


Il programma controlla se n (minore di un miliardo) è primo o no.

Inserire un numero n nel campo testo (al posto di 1000000000, per inserire lasciare il cursore nel campo testo) e poi premere il pulsante.

Osservazione: Se provate a inserire 1.500.000.000, vi sarà risposto "il tuo numero è troppo grande ..."; se invece inserite 4.000.000.000, l'applet non reagisce, sembra ignorare il commando. Perchè?

Il programma è stato scritto (volutamente) usando il formato int per i numeri, con questo formato non si può andare oltre 2.147.483.647, oltre questo limite il computer non reagisce.

Si sarebbero potuti usare altri formati, per esempio il formato long arriva fino a 9.223.372.036.854.775.807 (non è il più grande). La differenza sta nel fatto che il formato long (a 64 bit) occupa più memoria del formato int (a 32 bit). Il formato più "lungo" è comunque finito (un numero non può comunque avere più di 300 cifre).

Questo significa che il computer è limitato, non può dimostrare enunciati relativi a un'infinità di numeri o a numeri molto grandi, da cui la difficoltà, anche per un computer molto potente, di fattorizzare un numero molto grande in prodotto di numeri primi; come dice bene un bravo matematico di mia conoscenza ...

Il miglior computer è il nostro cervello

e un buon software per farlo girare è la matematica!