//////////////////////////////////////////////////////////////////////////////// // File: testbinomialcoef.c // // // // Test Binomial_Coefficient and xBinomial_Coefficient in the file // // binomial_coefficient.c // // // //////////////////////////////////////////////////////////////////////////////// #include #include // Externally defined routines extern double Binomial_Coefficient(int n, int m); extern long double xBinomial_Coefficient(int n, int m); extern int Factorial_Max_Arg( void ); // Internally defined routines void prt_Header( void ); void prt_Table(int n); void prt_xTable(int n); int main() { int n; printf("Program: testbinomialcoef.c\n\n"); printf("Test Binomial_Coefficient(n,x) \n\n"); prt_Header(); prt_Table(10); prt_Table(11); prt_Table(12); printf("\n\nLarge n\n"); n = Factorial_Max_Arg( ) + 10; printf("C(%3d,3) = %22.16e\n",n,Binomial_Coefficient(n,3)); printf("\nTest xBinomial_Coefficient(n,x) \n\n"); prt_Header(); prt_xTable(10); prt_xTable(11); prt_xTable(12); printf("\n\nLarge n\n"); n = Factorial_Max_Arg( ) + 10; printf("C(%3d,3) = %22.16Le\n",n,xBinomial_Coefficient(n,3)); } void prt_Header(void) { int i; printf(" n "); for (i = 0; i < 4; i++) printf(" "); printf(" x\n"); printf(" "); for (i = 0; i < 10; i++) printf(" %4d ",i); printf("\n"); } void prt_Table(int n) { int i; printf("%2d ",n); for (i = 0; i < 10; i++) printf(" %4.0f ",Binomial_Coefficient(n,i)); printf("\n"); } void prt_xTable(int n) { int i; printf("%2d ",n); for (i = 0; i < 10; i++) printf(" %4.0Lf ",xBinomial_Coefficient(n,i)); printf("\n"); }