Страницы: Пред. 1 2
RSS
VBA. Вычисление факториала типа n!/m!(n-m)!
 
Тоже писал свою функцию для подсчета сочетаний, чтобы уйти от WorksheetFunction.Combin():
Код
Function MyCombin(ByVal n As Long, ByVal m As Long) As Double
    Dim i As Long, p As Double
    If m > n Or m < 0 Then Exit Function
    If m > n - m Then m = n - m
    p = 1
    For i = 1 To m
        p = p * n / i
        n = n - 1
    Next i
    MyCombin = p
End Function

Работает относительно быстро, нет реального расчета факториалов (не возникает переполнения при n > 170)
Страницы: Пред. 1 2
Наверх