Files
2025-09-12 18:55:25 +09:00

14 lines
257 B
C

float factln(n)
int n;
{
float gammln();
void nrerror();
static float a[101];
if (n < 0) nrerror("Negative factorial in routine factln");
if (n <= 1) return 0.0;
if (n <= 100) return a[n] ? a[n] : (a[n]=gammln(n+1.0));
else return gammln(n+1.0);
}