public static void hypergeometric_pdf_values_test()
    //****************************************************************************80
    //
    //  Purpose:
    //
    //    HYPERGEOMETRIC_PDF_VALUES_TEST tests HYPERGEOMETRIC_PDF_VALUES.
    //
    //  Licensing:
    //
    //    This code is distributed under the GNU LGPL license.
    //
    //  Modified:
    //
    //    28 January 2008
    //
    //  Author:
    //
    //    John Burkardt
    //
    {
        double fx   = 0;
        int    pop  = 0;
        int    sam  = 0;
        int    succ = 0;
        int    x    = 0;

        Console.WriteLine("");
        Console.WriteLine("HYPERGEOMETRIC_PDF_VALUES_TEST:");
        Console.WriteLine("  HYPERGEOMETRIC_PDF_VALUES stores values of");
        Console.WriteLine("  the Hypergeometric PDF.");
        Console.WriteLine("");
        Console.WriteLine("     SAM    SUC   POP     X   HyperPDF(S,S,P)(X)");
        Console.WriteLine("");
        int n_data = 0;

        for (;;)
        {
            Hypergeometric.hypergeometric_pdf_values(ref n_data, ref sam, ref succ, ref pop, ref x, ref fx);
            if (n_data == 0)
            {
                break;
            }

            Console.WriteLine("  "
                              + sam.ToString(CultureInfo.InvariantCulture).PadLeft(8) + "  "
                              + succ.ToString(CultureInfo.InvariantCulture).PadLeft(8) + "  "
                              + pop.ToString(CultureInfo.InvariantCulture).PadLeft(8) + "  "
                              + x.ToString(CultureInfo.InvariantCulture).PadLeft(8) + "  "
                              + fx.ToString("0.################").PadLeft(24) + "");
        }
    }