Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Recensione Google Pixel Watch 5: sembra lo stesso, ma al polso la differenza si sente
Recensione Google Pixel Watch 5: sembra lo stesso, ma al polso la differenza si sente
Google Pixel Watch 5 ha affinato una formula già convincente con hardware più veloce, Gemini offline e nuovi strumenti per sport e benessere. Abbiamo provato la versione LTE da 41 mm, comoda anche di notte e ben proporzionata sui polsi piccoli. Il design resta un punto di forza, ma l'autonomia premia ancora il 45 mm e alcune funzioni AI non sono disponibili in Italia: ecco che cosa cambia rispetto a Watch 4 e quale formato conviene scegliere oggi
Nokia Innovation Day 2026: la sovranità europea passa dal mercato unico e dai laboratori italiani del gruppo
Nokia Innovation Day 2026: la sovranità europea passa dal mercato unico e dai laboratori italiani del gruppo
Politica, accademia e industria a confronto su mercato unico, sicurezza e competitività. Nei laboratori di Vimercate, Nokia ha mostrato le nuove generazioni di chip ottici e i test che ogni prodotto deve superare prima di arrivare sul mercato
In sella alla Fiido Nomads Pro: e-bike con motore centrale da 100 Nm per il divertimento a 360 gradi
In sella alla Fiido Nomads Pro: e-bike con motore centrale da 100 Nm per il divertimento a 360 gradi
Abbiamo assemblato e provato la Fiido Nomads Pro, evoluzione del modello da trekking già presente nella gamma, che migliora in tutto, soprattutto grazie al motore centrale, fluido e potente. Ottima app, costruzione solida e prezzo ok completano il quadro
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 30-05-2004, 16:55   #1
gurutech
Senior Member
 
L'Avatar di gurutech
 
Iscritto dal: Jun 2000
Città: S.Giuliano (MI)
Messaggi: 1047
algoritmo pigreco

ciao a tutti,
sto cercando di calcolare pigreco, e per ora mi è venuto in mente solo quello che vedete qui sotto.
Probabilmente è una delle procedure computazionalmente più imprecise, perchè non riesco ad andare oltre la 20ma iterazione, poi diventa incoerente.
Conoscete altri metodi migliori?
Codice:
#!/usr/bin/perl

$l=1;

for ($i=0;$i<20;$i++) {
$m=1 - sqrt (1 - ($l**2)/4);
$l=sqrt($m*2);
$pigreco=6*(2**$i)*$l;
print "$i * $pigreco\n";
}
__________________
“No te tomes tan en serio la vida, al fin y al cabo no saldrás vivo de ella”
gurutech è offline   Rispondi citando il messaggio o parte di esso
Old 30-05-2004, 16:58   #2
gurutech
Senior Member
 
L'Avatar di gurutech
 
Iscritto dal: Jun 2000
Città: S.Giuliano (MI)
Messaggi: 1047
dimenticavo, i valori che calcolo sono
0 * 3.10582854123025
1 * 3.13262861328124
2 * 3.13935020304687
3 * 3.14103195089053
4 * 3.14145247228534
5 * 3.14155760791162
6 * 3.14158389214894
7 * 3.14159046323676
8 * 3.14159210604305
9 * 3.14159251658815
10 * 3.14159261864079
11 * 3.14159264532122
12 * 3.14159264532122
13 * 3.14159264532122
14 * 3.14159264532122
15 * 3.14159230381174
16 * 3.14159230381174
17 * 3.14158683965504
18 * 3.14158683965504
19 * 3.14167426502176
__________________
“No te tomes tan en serio la vida, al fin y al cabo no saldrás vivo de ella”

Ultima modifica di gurutech : 30-05-2004 alle 17:16.
gurutech è offline   Rispondi citando il messaggio o parte di esso
Old 30-05-2004, 17:08   #3
gurutech
Senior Member
 
L'Avatar di gurutech
 
Iscritto dal: Jun 2000
Città: S.Giuliano (MI)
Messaggi: 1047
da un punto di vista matematico, ho trovato questo
http://www.cecm.sfu.ca/pi/formulas.ps

e secondo questo
http://www.cecm.sfu.ca/projects/ISC/.../C/pi10000.txt

l'algoritmo che ho fatto ci azzecca alla 7ma cifra fino al 14mo ciclo poi comincia a sbagliare
__________________
“No te tomes tan en serio la vida, al fin y al cabo no saldrás vivo de ella”

Ultima modifica di gurutech : 30-05-2004 alle 17:12.
gurutech è offline   Rispondi citando il messaggio o parte di esso
Old 30-05-2004, 18:19   #4
gurutech
Senior Member
 
L'Avatar di gurutech
 
Iscritto dal: Jun 2000
Città: S.Giuliano (MI)
Messaggi: 1047
oops
secondo questa fonte
http://numbers.computation.free.fr/Constants/Pi/pi.html

sono rimasto tra i babilonesi e archimede...
__________________
“No te tomes tan en serio la vida, al fin y al cabo no saldrás vivo de ella”
gurutech è offline   Rispondi citando il messaggio o parte di esso
Old 30-05-2004, 20:13   #5
kingv
Senior Member
 
L'Avatar di kingv
 
Iscritto dal: Jan 2001
Città: Milano
Messaggi: 5707
Quote:
Originariamente inviato da gurutech
oops
secondo questa fonte
http://numbers.computation.free.fr/Constants/Pi/pi.html

sono rimasto tra i babilonesi e archimede...


potresti in alternativa misurare la circonferenza di un cerchio e dividerlo per il diametro, solo che devi essere mooooolto preciso .




kingv è offline   Rispondi citando il messaggio o parte di esso
Old 30-05-2004, 20:45   #6
gurutech
Senior Member
 
L'Avatar di gurutech
 
Iscritto dal: Jun 2000
Città: S.Giuliano (MI)
Messaggi: 1047
Quote:
Originariamente inviato da kingv
potresti in alternativa misurare la circonferenza di un cerchio e dividerlo per il diametro, solo che devi essere mooooolto preciso .
è un'idea. si rischia di finire tra due estremi:

-A- Stato dell'Indiana : nel 1897 hanno provato a legiferare pi=3.2
http://faqs.jmas.co.jp/FAQs/sci-math-faq/indianabill
-B- Ramanujan
__________________
“No te tomes tan en serio la vida, al fin y al cabo no saldrás vivo de ella”
gurutech è offline   Rispondi citando il messaggio o parte di esso
Old 30-05-2004, 21:07   #7
kingv
Senior Member
 
L'Avatar di kingv
 
Iscritto dal: Jan 2001
Città: Milano
Messaggi: 5707
Quote:
Originariamente inviato da gurutech


-A- Stato dell'Indiana : nel 1897 hanno provato a legiferare pi=3.2
http://faqs.jmas.co.jp/FAQs/sci-math-faq/indianabill

io spero che sia una bufala perche' in caso contrario tanti miei dubbi sulla sanità mentale della classe politica americana sarebbero giustificati.



posso chiederti perche' stai cercandoti un algoritmo "implementabile"? Vuoi farci su qualche tipo di benchmark?
kingv è offline   Rispondi citando il messaggio o parte di esso
Old 30-05-2004, 22:41   #8
gurutech
Senior Member
 
L'Avatar di gurutech
 
Iscritto dal: Jun 2000
Città: S.Giuliano (MI)
Messaggi: 1047
Quote:
Originariamente inviato da kingv
io spero che sia una bufala perche' in caso contrario tanti miei dubbi sulla sanità mentale della classe politica americana sarebbero giustificati.
no, no giustificati pure

Quote:
posso chiederti perche' stai cercandoti un algoritmo "implementabile"? Vuoi farci su qualche tipo di benchmark?
spippolamento? insanità mentale?
Quote:
The amazing number pi Peter Borwein
[...]
Why compute the digits of PI? Sometimes it is necessary to do so, though hardly ever more than 6 or so digits that Archimedes computed several thousand years ago are needed for physical applications. Even far fetched computations like the volume of a spherical universe only require a few dozen digits. There is also the "Everest Hypothesis" ("because its there").
[...]
__________________
“No te tomes tan en serio la vida, al fin y al cabo no saldrás vivo de ella”
gurutech è offline   Rispondi citando il messaggio o parte di esso
Old 31-05-2004, 00:14   #9
gurutech
Senior Member
 
L'Avatar di gurutech
 
Iscritto dal: Jun 2000
Città: S.Giuliano (MI)
Messaggi: 1047
ora, nonostante sia l'una passata, non sono riuscito a resistere e ho costruito un'altro piccolo algoritmo per trovare pi per eccesso (quello di prima era per difetto):
Codice:
#!/usr/bin/perl

$R=2/(sqrt(3));
for ($i=1;$i<20;$i++) {
$l=sqrt(($R-1)/($R+1));
$R=sqrt((2*$R)/($R+1));
$pigreco=$l*6*(2**$i);
print "$pigreco\n";
}
pigreco sta matematicamente in mezzo tra i due algoritmi...

3.21539030917347
3.15965994209751
3.14608621513146
3.14271459964532
3.14187304997995
3.14166274705598
3.14161017660122
3.14159703431985
3.14159374879501
3.14159292765212
3.14159272140683
3.14159267301376
3.14159268159282
3.14159264371695
3.14159230341067
3.14159230371147
3.14158683962997
3.14158683964877
3.14167426502019
__________________
“No te tomes tan en serio la vida, al fin y al cabo no saldrás vivo de ella”

Ultima modifica di gurutech : 31-05-2004 alle 00:16.
gurutech è offline   Rispondi citando il messaggio o parte di esso
Old 31-05-2004, 00:54   #10
Frank1962
Senior Member
 
L'Avatar di Frank1962
 
Iscritto dal: Sep 2001
Città: de_legato
Messaggi: 792
ma che linguaggio stai usando? ...php ?
__________________
----------------------------------------------
File reality.sys corrupted, Reboot Universe? Y/N
----------------------------------------------
Frank1962 è offline   Rispondi citando il messaggio o parte di esso
Old 31-05-2004, 01:12   #11
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Perl
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 31-05-2004, 10:17   #12
gurutech
Senior Member
 
L'Avatar di gurutech
 
Iscritto dal: Jun 2000
Città: S.Giuliano (MI)
Messaggi: 1047
ecco, ho messo tutto qui
http://www.gurutech.it/polimi/pigreco.pdf
compreso come ho fatto a tirar fuori le formule.
Adesso è meglio che vada a studiare sul serio, vi lascio in omaggio questo link dove trovate la stessa cosa che ho fatto io in java

http://www.math.utah.edu/~alfeld/Arc...rchimedes.html
__________________
“No te tomes tan en serio la vida, al fin y al cabo no saldrás vivo de ella”
gurutech è offline   Rispondi citando il messaggio o parte di esso
Old 31-05-2004, 12:37   #13
Mixmar
Senior Member
 
L'Avatar di Mixmar
 
Iscritto dal: Feb 2002
Città: Trento
Messaggi: 962
Se vi interessano solo le cifre, consiglio:

http://mathworld.wolfram.com/BBPFormula.html

Questo sì che è avere tempo da perd... ehm, dedicare con profitto a ricerche superiori!
__________________
"Et Eärallo Endorenna utúlien. Sinome maruvan ar Hildinyar tenn' Ambar-metta!" -- Aragorn Elessar, Heir of Isildur
Mixmar -- OpenSuSE 11.1 on AMD 64 3000+ on DFI LanParty nF4-D | GeForce 6600 GT + Thermaltake Schooner on Samsung 710N
Storage -- ( 2 x Hitachi Deskstar 80 Gb + 1 x Hitachi 250 Gb ) = 1 RAID 5 + 1 Storage space LaCie Ethernet Disk Mini 250 Gb | HP - DV2150 EL MILAN CLAN
Mixmar è offline   Rispondi citando il messaggio o parte di esso
Old 31-05-2004, 19:14   #14
gurutech
Senior Member
 
L'Avatar di gurutech
 
Iscritto dal: Jun 2000
Città: S.Giuliano (MI)
Messaggi: 1047
Quote:
Originariamente inviato da Mixmar
Questo sì che è avere tempo da perd... ehm, dedicare con profitto a ricerche superiori!
ok ok, è solo una curiosità!

però leggiucchiando qua è là ho scoperto che sul calcolo di pi ci si può anche lucrare.
mi spiego: per calcolare 1 miliardo di cifre di pigreco in un tempo umano e senza errori con un computer, bisogna inventarsi un metodi di fare conti molto in fretta che poi può essere applicato a un'infinità di altri campi.
In questo senso il modo che abbiamo tutti imparato alle elementari per fare le moltiplicazioni, applicato ad un computer è una schifezza.
__________________
“No te tomes tan en serio la vida, al fin y al cabo no saldrás vivo de ella”
gurutech è offline   Rispondi citando il messaggio o parte di esso
Old 31-05-2004, 21:47   #15
/\/\@®¢Ø
Bannato
 
L'Avatar di /\/\@®¢Ø
 
Iscritto dal: Jul 2000
Città: Malo (VI)
Messaggi: 1000
Una serie molto efficace e' quella di Borwein e Borwein (1987), che aggiunge ad ogni iterazione 25 (!) cifre esatte.
La formula non e' proprio elegantissima, ma ci si puo' accontentare...
Codice:
1/pi = 12*somma(n da 0 a inf.)
( (-1)^n *(6n!)[ 212175710912 sqrt(61) + 1657145277365+n(13773980892672 sqrt(61) + 107578229802750)] / (n)!^3 (3n)! [5280 (236674 + 30303 sqrt(61)]^(3n+3/2)
/\/\@®¢Ø è offline   Rispondi citando il messaggio o parte di esso
Old 31-05-2004, 22:31   #16
/\/\@®¢Ø
Bannato
 
L'Avatar di /\/\@®¢Ø
 
Iscritto dal: Jul 2000
Città: Malo (VI)
Messaggi: 1000
Quote:
Originariamente inviato da gurutech
ora, nonostante sia l'una passata, non sono riuscito a resistere e ho costruito un'altro piccolo algoritmo per trovare pi per eccesso (quello di prima era per difetto):
Codice:
#!/usr/bin/perl

$R=2/(sqrt(3));
for ($i=1;$i<20;$i++) {
$l=sqrt(($R-1)/($R+1));
$R=sqrt((2*$R)/($R+1));
$pigreco=$l*6*(2**$i);
print "$pigreco\n";
}
pigreco sta matematicamente in mezzo tra i due algoritmi...

3.21539030917347
3.15965994209751
3.14608621513146
3.14271459964532
3.14187304997995
3.14166274705598
3.14161017660122
3.14159703431985
3.14159374879501
3.14159292765212
3.14159272140683
3.14159267301376
3.14159268159282
3.14159264371695
3.14159230341067
3.14159230371147
3.14158683962997
3.14158683964877
3.14167426502019
Devi fare attenzione ad una cosa importante, ovvero alla precisione dei tipi che usi per i conti. In questi casi e' praticamente necessario utilizzare numeri di precisione arbitraria. A meno di ricorrere a librerie pero', la maggior parte dei linguaggi supporta precisione arbitraria _al piu'_ sugli interi. Il fatto di usare funzioni come sqrt nel tuo caso probabilmente ammazza la precisione. Meglio piuttosto usare un algoritmo che operi sui razionali, anche se magari piu' lento, come il seguente


Il risultato che ho ottenuto io (in haskell) e' il seguente:

2.0
2.6666666666666665
2.933333333333333
3.0476190476190474
3.0984126984126985
3.1215007215007216
3.1321567321567323
3.137129537129537
3.139469680646151
3.140578169680337
3.1411060216013778
3.1413584725201362
3.1414796489611403
3.141537993173476
3.141566159344948
3.1415797881375958
3.1415863960370616
3.1415896055882304
3.141591166991502
3.141591927675147
3.1415922987403397
3.1415924799582244
3.141592568553635
3.1415926119088358
3.141592633144036
3.141592643553448
3.141592648659952
3.141592651166781
3.141592652398206
3.1415926530034826
3.1415926533011596
3.1415926534476357
3.141592653519747
3.1415926535552643
3.141592653572766
3.141592653581393
3.141592653585648
3.1415926535877468
3.141592653588783
3.141592653589294
3.1415926535895466
3.1415926535896714
3.141592653589733
3.1415926535897634
3.1415926535897785
3.141592653589786
3.1415926535897896
3.1415926535897913
3.1415926535897922
3.1415926535897927
3.141592653589793

come vedi converge in modo migliore, a differenza del tuo codice, che dopo un po' "sbarella" (ci sono comunque alcuni errori dovuti alla conversione da razionale a virgola mobile che provero' ad evitare)

Qui comunque trovi diverse formule, qualcuna puo' fare al caso tuo.

Ultima modifica di /\/\@®¢Ø : 31-05-2004 alle 22:37.
/\/\@®¢Ø è offline   Rispondi citando il messaggio o parte di esso
Old 31-05-2004, 23:06   #17
gurutech
Senior Member
 
L'Avatar di gurutech
 
Iscritto dal: Jun 2000
Città: S.Giuliano (MI)
Messaggi: 1047
Quote:
Originariamente inviato da /\/\@®¢Ø
A meno di ricorrere a librerie pero', la maggior parte dei linguaggi supporta precisione arbitraria _al piu'_ sugli interi.
potrei provare a passare il tutto a bc, dici che funzionerà?

Quote:
Il fatto di usare funzioni come sqrt nel tuo caso probabilmente ammazza la precisione. Meglio piuttosto usare un algoritmo che operi sui razionali, anche se magari piu' lento,
be' ho provato anche con leibnitz
pi/4 = 1 - 1/3 + 1/5 - 1/7 ...
ma per tirar fuori 7 cifre ci mette un milione di iterazioni :eheh:
__________________
“No te tomes tan en serio la vida, al fin y al cabo no saldrás vivo de ella”
gurutech è offline   Rispondi citando il messaggio o parte di esso
Old 31-05-2004, 23:15   #18
/\/\@®¢Ø
Bannato
 
L'Avatar di /\/\@®¢Ø
 
Iscritto dal: Jul 2000
Città: Malo (VI)
Messaggi: 1000
Quote:
Originariamente inviato da gurutech
potrei provare a passare il tutto a bc, dici che funzionerà?
boh non l'ho mai usato.




be' ho provato anche con leibnitz
pi/4 = 1 - 1/3 + 1/5 - 1/7 ...
ma per tirar fuori 7 cifre ci mette un milione di iterazioni :eheh: [/quote]
Beh, non troppo semplice
La formula che ho usato io ad esempio va gia' abbastanza bene...
forse ancora meglio una delle seguenti, tutte dovute a Ramanujan e che trovi nel link che ho riportato:
/\/\@®¢Ø è offline   Rispondi citando il messaggio o parte di esso
Old 31-05-2004, 23:22   #19
/\/\@®¢Ø
Bannato
 
L'Avatar di /\/\@®¢Ø
 
Iscritto dal: Jul 2000
Città: Malo (VI)
Messaggi: 1000
come non detto quelle tre forse non sono cosi' semplici (uhm... termine a pedice... )
la' puoi comuinque trovarne di opportune.
/\/\@®¢Ø è offline   Rispondi citando il messaggio o parte di esso
Old 01-06-2004, 22:59   #20
gurutech
Senior Member
 
L'Avatar di gurutech
 
Iscritto dal: Jun 2000
Città: S.Giuliano (MI)
Messaggi: 1047
ecco con bc(1) è molto meglio
Codice:
bash-2.05a$ time bc pigreco.bc 
bc 1.06
Copyright 1991-1994, 1997, 1998, 2000 Free Software Foundation, Inc.
This is free software with ABSOLUTELY NO WARRANTY.
For details type `warranty'. 
3.1415926535897932384626433832795028841971693993751058209749445*02977\
93979003832755187039605537355163056713811295792041015968426903519036\
19418561079235059815597867847277845963233428011049306481123254672547\
06311502208770628628413205845869436023049732563569828695132669875998\
199952912012796343769788055552

real    0m12.504s
user    0m12.198s
sys     0m0.003s
sono giuste le prime 61 cifre (fino all'*). il codice è questo:
Codice:
scale=300
l=1
for (i=0; i<100; i++) {
m = 1 - sqrt(1-(l^2)/4)
l=sqrt(2*m)
pigreco=6*(2^i)*l
}
print pigreco
print "\n"

quit

(1)
Quote:
man bc
...
NAME
bc - An arbitrary precision calculator language
...
DESCRIPTION
bc is a language that supports arbitrary precision numbers with interactive execution of
statements. There are some similarities in the syntax to the C programming language. A
standard math library is available by command line option.
...
__________________
“No te tomes tan en serio la vida, al fin y al cabo no saldrás vivo de ella”
gurutech è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Recensione Google Pixel Watch 5: sembra lo stesso, ma al polso la differenza si sente Recensione Google Pixel Watch 5: sembra lo stess...
Nokia Innovation Day 2026: la sovranità europea passa dal mercato unico e dai laboratori italiani del gruppo Nokia Innovation Day 2026: la sovranità e...
In sella alla Fiido Nomads Pro: e-bike con motore centrale da 100 Nm per il divertimento a 360 gradi In sella alla Fiido Nomads Pro: e-bike con motor...
ASUS Zenbook 14 (UX3480AA): tanta autonomia con uno chassis bello e robusto ASUS Zenbook 14 (UX3480AA): tanta autonomia con ...
MSI PRO MAX: QD-OLED ultrawide per lavorare, creare e giocare MSI PRO MAX: QD-OLED ultrawide per lavorare, cre...
Abbiamo scattato con OPPO Find X10 Pro M...
Fino a 21 miliardi per i chip americani:...
Minions: Apple trasforma i Mac inattivi ...
Microsoft interrompe il supporto a Offic...
Musk stacca la spina a Kiev? Cosa &egrav...
No, non è Tatooine: ma 70 Ophiuchi potre...
Con Hisense PX4-Pro la vera esperienza d...
Anthropic avverte: i worm AI decentraliz...
La Svezia riscopre il contante: pagament...
Mercato smartphone: vendite in calo del ...
NASA Perseverance stabilisce un nuovo re...
Frontech chiude il terzo ciclo di accele...
70mai A900 e A900 Ultra in prova: le nuo...
Ninja CRISPi a 99,99€ su Amazon: la frig...
Amazon supera il milione di robot nei ma...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 14:34.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v