Metodo per calcolare il numero di cifre di un periodo.

Programmazione, algoritmica, teoria dell'informazione, ...
Rispondi
Avatar utente
Explorer
Messaggi: 14
Iscritto il: 27 mar 2008, 11:03
Contatta:

Metodo per calcolare il numero di cifre di un periodo.

Messaggio da Explorer »

Come faccio a calcolare il numero di cifre del periodo quanto il divisore è di centinaia o migliaia di cifre?
Ad esempio da quanto cifre è composto il periodo del quoziente di
2/430813358832825 79994472627096546 85139768937797

Esistono dei programmi con cui posso fare questo tipo di calcoli?
I versi aurei di Pitagora.
http://www.vangeloditommaso.com/italia/cat096.htm#2
fph
Site Admin
Messaggi: 3956
Iscritto il: 01 gen 1970, 01:00
Località: in giro
Contatta:

Messaggio da fph »

Non credo che esista niente già "preconfezionato". Se ti è chiaro l'algoritmo per farlo (devi calcolare svariati 10^k modulo m, dove m è il divisore, e devi cercare di calcolarne il meno possibile ingegnandoti un po') e hai solo bisogno di un programma o libreria per fare conti con interi molto grandi, puoi usare programmi tipo mathematica (più facile), linguaggi tipo Ruby che li supportano nativamente (facile se sai programmare), o librerie tipo GNU GMP per C e C++ (macchinoso anche se sai programmare).
--federico
[tex]\frac1{\sqrt2}\bigl(\left|\text{loves me}\right\rangle+\left|\text{loves me not}\right\rangle\bigr)[/tex]
fph
Site Admin
Messaggi: 3956
Iscritto il: 01 gen 1970, 01:00
Località: in giro
Contatta:

Messaggio da fph »

Mi correggo, c'è.
Dai un'occhiata qui e poi scaricati PARI/GP come indica nella pagina.
E ora che ci ripenso un minimo più seriamente anche in Mathematica dovrebbe esserci qualcosa di preconfezionato per calcolare un ordine moltiplicativo (well, mi stupirebbe se non ci fosse)
--federico
[tex]\frac1{\sqrt2}\bigl(\left|\text{loves me}\right\rangle+\left|\text{loves me not}\right\rangle\bigr)[/tex]
Avatar utente
FeddyStra
Messaggi: 403
Iscritto il: 19 set 2006, 15:34
Località: 45° 7' 19.2'' N 7° 23' 20.1'' E

Messaggio da FeddyStra »

In Mathematica $ ord_m(k) $ si inserisce così:

Codice: Seleziona tutto

MultiplicativeOrder[k,m]
Inoltre la funzione che ti trova la lunghezza del periodo del numero razionale $ r $ scritto in base $ b $ può essere implementata così:

Codice: Seleziona tutto

LunghezzaPeriodo[r_Rational, b_Integer?Positive] := MultiplicativeOrder[b, FixedPoint[Quotient[#, GCD[#, b]] &, Denominator[r]]]
[quote="julio14"]Ci sono casi in cui "si deduce" si può sostituire con "è un'induzione che saprebbe fare anche un macaco", ma per come hai impostato i conti non mi sembra la tua situazione...[/quote][quote="Tibor Gallai"]Ah, un ultimo consiglio che risolve qualsiasi dubbio: ragiona. Le cose non funzionano perché lo dico io o Cauchy o Dio, ma perché hanno senso.[/quote]To understand recursion, you fist need to understand recursion.
[tex]i \in \| al \| \, \pi \, \zeta(1)[/tex]
Rispondi