📄 dcdflib_prb.c
字号:
{ double ccdf_compute; double ccdf_lookup; double cdf_compute; double cdf_lookup; int n_data; double ompr; int s; double s_double; double pr; int x; double x_double; cout << "\n"; cout << "TEST13\n"; cout << " CUMBIN computes the Binomial CDF\n"; cout << " and the complementary CDF.\n"; cout << " BINOMIAL_CDF_VALUES looks up some values.\n"; cout << "\n"; cout << " X S Pr CDF CDF\n"; cout << " (Lookup) (Computed)\n"; cout << "\n"; n_data = 0; for ( ; ; ) { binomial_cdf_values ( &n_data, &x, &pr, &s, &cdf_lookup ); if ( n_data == 0 ) { break; } ompr = 1.0E+00 - pr; s_double = ( double ) s; x_double = ( double ) x; cumbin ( &s_double, &x_double, &pr, &ompr, &cdf_compute, &ccdf_compute ); cout << " " << setw(2) << s << " " << setw(2) << x << " " << setw(8) << pr << " " << setw(12) << cdf_lookup << " " << setw(12) << cdf_compute << "\n"; } cout << "\n"; cout << " X S Pr 1-CDF CCDF\n"; cout << " (Lookup) (Computed)\n"; cout << "\n"; n_data = 0; for ( ; ; ) { binomial_cdf_values ( &n_data, &x, &pr, &s, &cdf_lookup ); if ( n_data == 0 ) { break; } ccdf_lookup = 1.0E+00 - cdf_lookup; ompr = 1.0E+00 - pr; s_double = ( double ) s; x_double = ( double ) x; cumbin ( &s_double, &x_double, &pr, &ompr, &cdf_compute, &ccdf_compute ); cout << " " << setw(2) << s << " " << setw(2) << x << " " << setw(8) << pr << " " << setw(12) << ccdf_lookup << " " << setw(12) << ccdf_compute << "\n"; } return;}//****************************************************************************80void test14 ( void )//****************************************************************************80//// Purpose://// TEST14 tests CUMCHI, CHI_SQUARE_CDF_VALUES.//{ double ccdf_compute; double ccdf_lookup; double cdf_compute; double cdf_lookup; int df; double df_double; int n_data; double x; cout << "\n"; cout << "TEST14\n"; cout << " CUMCHI computes the chi square CDF\n"; cout << " and the complementary CDF.\n"; cout << " CHI_SQUARE_CDF_VALUES looks up some values.\n"; cout << "\n"; cout << " X DF CDF CDF\n"; cout << " (Lookup) (Computed)\n"; cout << "\n"; n_data = 0; for ( ; ; ) { chi_square_cdf_values ( &n_data, &df, &x, &cdf_lookup ); if ( n_data == 0 ) { break; } df_double = ( double ) df; cumchi ( &x, &df_double, &cdf_compute, &ccdf_compute ); cout << " " << setw(8) << x << " " << setw(2) << df << " " << setw(12) << cdf_lookup << " " << setw(12) << cdf_compute << "\n"; } cout << "\n"; cout << " X DF 1-CDF CCDF\n"; cout << " (Lookup) (Computed)\n"; cout << "\n"; n_data = 0; for ( ; ; ) { chi_square_cdf_values ( &n_data, &df, &x, &cdf_lookup ); if ( n_data == 0 ) { break; } ccdf_lookup = 1.0E+00 - cdf_lookup; df_double = ( double ) df; cumchi ( &x, &df_double, &cdf_compute, &ccdf_compute ); cout << " " << setw(8) << x << " " << setw(2) << df << " " << setw(12) << ccdf_lookup << " " << setw(12) << ccdf_compute << "\n"; } return;}//****************************************************************************80void test15 ( void )//****************************************************************************80//// Purpose://// TEST15 tests CUMCHN, CHI_NONCENTRAL_CDF_VALUES.//{ double ccdf_compute; double ccdf_lookup; double cdf_compute; double cdf_lookup; int df; double df_double; double lambda; int n_data; double x; cout << "\n"; cout << "TEST15\n"; cout << " CUMCHN computes the cumulative density\n"; cout << " function for the noncentral chi-squared\n"; cout << " distribution.\n"; cout << " CHI_NONCENTRAL_CDF_VALUES looks up some values.\n"; cout << "\n"; cout << " DF Lambda X CDF CDF\n"; cout << " (Lookup) (Computed)\n"; cout << "\n"; n_data = 0; for ( ; ; ) { chi_noncentral_cdf_values ( &n_data, &x, &lambda, &df, &cdf_lookup ); if ( n_data == 0 ) { break; } df_double = ( double ) df; cumchn ( &x, &df_double, &lambda, &cdf_compute, &ccdf_compute ); cout << " " << setw(6) << df << " " << setw(8) << lambda << " " << setw(8) << x << " " << setw(12) << cdf_lookup << " " << setw(12) << cdf_compute << "\n"; } cout << "\n"; cout << " DF Lambda X 1-CDF CCDF\n"; cout << " (Lookup) (Computed)\n"; cout << "\n"; n_data = 0; for ( ; ; ) { chi_noncentral_cdf_values ( &n_data, &x, &lambda, &df, &cdf_lookup ); if ( n_data == 0 ) { break; } ccdf_lookup = 1.0E+00 - cdf_lookup; df_double = ( double ) df; cumchn ( &x, &df_double, &lambda, &cdf_compute, &ccdf_compute ); cout << " " << setw(6) << df << " " << setw(8) << lambda << " " << setw(8) << x << " " << setw(12) << ccdf_lookup << " " << setw(12) << ccdf_compute << "\n"; } return;}//****************************************************************************80void test16 ( void )//****************************************************************************80//// Purpose://// TEST16 tests CUMF, F_CDF_VALUES.//{ double ccdf_compute; double ccdf_lookup; double cdf_compute; double cdf_lookup; int dfd; double dfd_double; int dfn; double dfn_double; int n_data; double x; cout << "\n"; cout << "TEST16\n"; cout << " CUMF computes the F CDF\n"; cout << " and the complementary CDF.\n"; cout << " F_CDF_VALUES looks up some values.\n"; cout << "\n"; cout << " X DFN DFD CDF CDF\n"; cout << " (Lookup) (Computed)\n"; cout << "\n"; n_data = 0; for ( ; ; ) { f_cdf_values ( &n_data, &dfn, &dfd, &x, &cdf_lookup ); if ( n_data == 0 ) { break; } dfn_double = ( double ) dfn; dfd_double = ( double ) dfd; cumf ( &x, &dfn_double, &dfd_double, &cdf_compute, &ccdf_compute ); cout << " " << setw(8) << x << " " << setw(2) << dfn << " " << setw(2) << dfd << " " << setw(12) << cdf_lookup << " " << setw(12) << cdf_compute << "\n"; } cout << "\n"; cout << " X DFN DFD 1-CDF CCDF\n"; cout << " (Lookup) (Computed)\n"; cout << "\n"; n_data = 0; for ( ; ; ) { f_cdf_values ( &n_data, &dfn, &dfd, &x, &cdf_lookup ); if ( n_data == 0 ) { break; } ccdf_lookup = 1.0E+00 - cdf_lookup; dfn_double = ( double ) dfn; dfd_double = ( double ) dfd; cumf ( &x, &dfn_double, &dfd_double, &cdf_compute, &ccdf_compute ); cout << " " << setw(8) << x << " " << setw(2) << dfn << " " << setw(2) << dfd << " " << setw(12) << ccdf_lookup << " " << setw(12) << ccdf_compute << "\n"; } return;}//****************************************************************************80void test17 ( void )//****************************************************************************80//// Purpose://// TEST17 tests CUMFNC, F_NONCENTRAL_CDF_VALUES.//{ double ccdf_compute; double ccdf_lookup; double cdf_compute; double cdf_lookup; int dfd; double dfd_double; int dfn; double dfn_double; double lambda; int n_data; double x; cout << "\n"; cout << "TEST17\n"; cout << " CUMFNC computes the noncentral F CDF\n"; cout << " and the complementary CDF.\n"; cout << " F_NONCENTRAL_CDF_VALUES looks up some values.\n"; cout << "\n"; cout << " X DFN DFD LAMBDA CDF CDF\n"; cout << " (Lookup) (Computed)\n"; cout << "\n"; n_data = 0; for ( ; ; ) { f_noncentral_cdf_values ( &n_data, &dfn, &dfd, &lambda, &x, &cdf_lookup ); if ( n_data == 0 ) { break; } dfn_double = ( double ) dfn; dfd_double = ( double ) dfd; cumfnc ( &x, &dfn_double, &dfd_double, &lambda, &cdf_compute, &ccdf_compute ); cout << " " << setw(8) << x << " " << setw(2) << dfn << " " << setw(2) << dfd << " " << setw(8) << lambda << " " << setw(12) << cdf_lookup << " " << setw(12) << cdf_compute << "\n"; } cout << "\n"; cout << " X DFN DFD LAMBDA 1-CDF CCDF\n"; cout << " (Lookup) (Computed)\n"; cout << "\n"; n_data = 0; for ( ; ; ) { f_noncentral_cdf_values ( &n_data, &dfn, &dfd, &lambda, &x, &cdf_lookup ); if ( n_data == 0 ) { break; } ccdf_lookup = 1.0E+00 - cdf_lookup; dfn_double = ( double ) dfn; dfd_double = ( double ) dfd; cumfnc ( &x, &dfn_double, &dfd_double, &lambda, &cdf_compute, &ccdf_compute ); cout << " " << setw(8) << x << " " << setw(2) << dfn << " " << setw(2) << dfd << " " << setw(8) << lambda << " " << setw(12) << ccdf_lookup << " " << setw(12) << ccdf_compute << "\n"; } return;}//****************************************************************************80void test18 ( void )//****************************************************************************80//// Purpose://// TEST18 tests CUMGAM, GAMMA_INC_VALUES.//{ double a; double ccdf_compute; double ccdf_lookup; double cdf_compute; double cdf_lookup; int n_data; double x; cout << "\n"; cout << "TEST18\n"; cout << " CUMGAM computes the Gamma CDF\n"; cout << " and the complementary CDF.\n"; cout << " GAMMA_INC_VALUES looks up some values.\n"; cout << "\n"; cout << " A X CDF CDF\n"; cout << " (Lookup) (Computed)\n"; cout << "\n"; n_data = 0; for ( ; ; ) { gamma_inc_values ( &n_data, &a, &x, &cdf_lookup ); if ( n_data == 0 ) { break; } cumgam ( &x, &a, &cdf_compute, &ccdf_compute ); cout << " " << setw(8) << a << " " << setw(8) << x << " " << setw(12) << cdf_lookup << " " << setw(12) << cdf_compute << "\n"; } cout << "\n"; cout << " A X CDF CDF\n"; cout << " (Lookup) (Computed)\n"; cout << "\n"; n_data = 0; for ( ; ; ) { gamma_inc_values ( &n_data, &a, &x, &cdf_lookup ); if ( n_data == 0 ) { break; } ccdf_lookup = 1.0E+00 - cdf_lookup; cumgam ( &x, &a, &cdf_compute, &ccdf_compute ); cout << " " << setw(8) << a << " " << setw(8) << x << " " << setw(12) << ccdf_lookup << " " << setw(12) << ccdf_compute << "\n"; } return;}//****************************************************************************80void test19 ( void )//****************************************************************************80//// Purpose://// TEST19 tests CUMNBN, NEGATIVE_BINOMIAL_CDF_VALUES.//{ double ccdf_compute; double ccdf_lookup; double cdf_compute; double cdf_lookup; int f; double f_double; int n_data; double ompr; int s; double s_double; double pr; cout << "\n"; cout << "TEST19\n"; cout << " CUMNBN computes the Negative Binomial CDF\n"; cout << " and the complementary CDF.\n"; cout << " NEGATIVE_BINOMIAL_CDF_VALUES looks up some values.\n"; cout << "\n"; cout << " F S Pr CDF CDF\n"; cout << " (Lookup) (Computed)\n"; cout << "\n"; n_data = 0; for ( ; ; ) { negative_binomial_cdf_values ( &n_data, &f, &s, &pr, &cdf_lookup ); if ( n_data == 0 ) { break; }
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -