se viene usata la "formula"
((9.05x329)+80)/337=9.072551929
si può ipotizzare che per ogni sito sia salvata la "media attuale" e il "numero di voti"...
ipotizzando magari una memorizzazione nel database con un precisione di 4cifre dopo la virgola... ti troveresti a dover fare la somma in maniera progressiva... e non sommando 80 di colpo... :P
quindi:
((9.05x329)+10)/330=9.052878
((9.0528x330)+10)/331=9.055661
etc... quindi conta molto quante cifre ti porti dietro... e se le arrotondi o le tronchi (se il dato di origine ha un precisione di 4cifre dopo la virgola teoricamente i dati dopo la 4a cifra del risultato non hanno senso non andrebbero considerati... nemmeno con arrotondamenti... :) ... o almeno così mi obbligavano a fare nei corsi di fisica ) :)
ci sono tante cose da tenere in considerazione e ovviamente quando hai tanti voti, una media molto alta... e stai li a controllare 2cifre dopo la virgola di precisione... fai presto a trovare errori di approssimazione (naturalissimi in qualsiasi applicazione informatica... in quanto sappiamo bene che non abbiamo infinito spazio per memorizzare tutte le cifre che vogliamo :D) :P
anche se quando la precisione richiesta è molto alta ed il numero di voti non è poi così grande si sceglie di memorizzare "somma dei voti" e "numero dei voti "in modo da avere la massima precisione possibile evitando errori di arrotondamento successivi (un solo round() fatto sul valore risultatante da una divisione :) )...
Ultima modifica di Evcz : 18-01-2006 alle ore 22.11.58
There are three kinds of people in this world: people who watch things happen ... people who complain about things that happen ... and people who make things happen...