[FLUG] [CODE] Re: Internet time
- From: Andrea <andrea.b@xxxxxxxxx>
- To: fanolug@xxxxxxxxxxxxx
- Date: Sat, 15 Mar 2003 19:40:45 +0100
Mailing List del Fortunae LUG
=============================
Simon wrote:
(http://www.isthe.com/chongo/index.html una pagina assolutamente
Grazie per il link, davvero interessante!
C'è un altro teorema che dice che basta controllare che un numero non
sia divisibile solo per i numeri primi che lo precedono.
Si: infatti se non e' divisibile per nessuno dei numeri primi che lo
precedono, non puo' essere neanche divisibile per qualunque altro numero
(minore di esso) che, se non e' primo, e' un prodotto di potenze di
numeri primi...
Il mio algoritmo rispetto a queste raffinatezze è un brute-force...
Non volevo mica criticarlo! Solo che non capivo h/2! Forza bruta per
forza bruta, mettevi h e via... :-)
PS. Se trovi la dimostrazione matematica del perchè, o se sai spiegarmelo
a parole tue... mi farebbe piacere.
Ci provo con parole mie :-)
Nel ciclo for in pratica dividi h per tutti gli interi g da 2 fino ad un
certo limite, nella speranza di trovare che tutte queste divisioni
abbiano resto diverso da zero.
Adesso pensa a quelle divisioni al contrario: h e' il prodotto di due
numeri, uno dei quali e' il nostro g e l'altro e' appunto h/g che non si
calcola. Se provi anche per g maggiore di sqrt(h), il secondo fattore e'
sicuramente minore di sqrt(h) (perche' il loro prodotto deve essere h),
e quindi l'hai gia' provato prima (la div e' commutativa...)!
Non so se si e' capito, ma e' + facile pensarlo che scriverlo :-)))
--
Andrea <andrea.b@xxxxxxxxx>
--
Bill Gates : "No! Nel nostro software non ci sono bug significativi che un numero
significativo di utenti vuol vedere corretti."
- References:
- [FLUG] [CODE] Internet time
- From: Simon
- [FLUG] [CODE] Re: Internet time
- From: Andrea
- [FLUG] Re: [CODE] Re: Internet time
- From: Simon
- [FLUG] Re: [CODE] Re: Internet time
- From: Andrea
- [FLUG] Re: [CODE] Re: Internet time
- From: Simon
Other related posts:
C'è un altro teorema che dice che basta controllare che un numero non sia divisibile solo per i numeri primi che lo precedono.
PS. Se trovi la dimostrazione matematica del perchè, o se sai spiegarmelo a parole tue... mi farebbe piacere.
- [FLUG] [CODE] Internet time
- From: Simon
- [FLUG] [CODE] Re: Internet time
- From: Andrea
- [FLUG] Re: [CODE] Re: Internet time
- From: Simon
- [FLUG] Re: [CODE] Re: Internet time
- From: Andrea
- [FLUG] Re: [CODE] Re: Internet time
- From: Simon