18 lines
304 B
Text
18 lines
304 B
Text
func left_factorial(n) {
|
|
static cached = 0
|
|
static factorial = 1
|
|
static leftfact = 0
|
|
|
|
if (n < cached) {
|
|
cached = 0
|
|
factorial = 1
|
|
leftfact = 0
|
|
}
|
|
|
|
while (n > cached) {
|
|
leftfact += factorial
|
|
factorial *= ++cached
|
|
}
|
|
|
|
leftfact
|
|
}
|