Ho bisogno di calcolare il fattoriale di numeri fino a circa 100! per determinare se una serie di dati in stile flip moneta è casuale, come da this Wikipedia entry on Bayesian probability. Come puoi vedere, la formula necessaria riguarda 3 calcoli fattoriali (ma, interessante, due di questi calcoli fattoriali sono calcolati lungo la strada verso il terzo).Come posso calcolare un fattoriale in C# usando una chiamata alla biblioteca?
Ho visto this question here, ma pensavo che il numero intero sarebbe esploso abbastanza rapidamente. Potrei anche fare una funzione più intelligente del calcolo fattoriale (cioè, se ho 11!/(7! 3!), Come per l'esempio wiki, potrei andare a (11 * 10 * 9 * 8)/3!), Ma questo mi fa pensare ad un'ottimizzazione prematura, nel senso che voglio che funzioni, ma non mi interessa la velocità (ancora).
Quindi cos'è una buona libreria C# che posso chiamare per calcolare il fattoriale per ottenere tale probabilità? Non sono interessato a tutte le meraviglie che possono andare nel calcolo fattoriale, voglio solo il risultato in modo che io possa manipolarlo. Non sembra esserci una funzione fattoriale nello spazio dei nomi Math, quindi la domanda.
Funziona come un fascino, grazie per il link! – mmr
Vedere anche [lo stesso] (http://numerics.mathdotnet.com/api/MathNet.Numerics/SpecialFunctions.htm#Factorial) in [Numeri Math.NET] (http://numerics.mathdotnet.com), il successore della libreria collegata Iridium Math.NET. –