Пример #1
0
    private static void test05()

    //****************************************************************************80
    //
    //  Purpose:
    //
    //    TEST05 tests HYPERSPHERE_AREA, HYPERSPHERE_VOLUME.
    //
    //  Licensing:
    //
    //    This code is distributed under the GNU LGPL license.
    //
    //  Modified:
    //
    //    15 May 2013
    //
    //  Author:
    //
    //    John Burkardt
    //
    {
        int m;

        const double r = 1.5;

        Console.WriteLine("");
        Console.WriteLine("TEST05");
        Console.WriteLine("  For a hypersphere in M dimensions:");
        Console.WriteLine("  HYPERSPHERE_AREA computes the area");
        Console.WriteLine("  HYPERSPHERE_VOLUME computes the volume.");
        Console.WriteLine("");
        Console.WriteLine("  Notice that both quantities eventually decrease");
        Console.WriteLine("");
        Console.WriteLine("  We use a radius of R = " + r + "");
        Console.WriteLine("");
        Console.WriteLine("    M        Area          Volume    Area / Volume ");
        Console.WriteLine("");

        for (m = 1; m <= 20; m++)
        {
            double area   = Hypersphere.hypersphere_area(m, r);
            double volume = Hypersphere.hypersphere_volume(m, r);
            Console.WriteLine("  " + m.ToString(CultureInfo.InvariantCulture).PadLeft(3)
                              + "  " + area.ToString(CultureInfo.InvariantCulture).PadLeft(14)
                              + "  " + volume.ToString(CultureInfo.InvariantCulture).PadLeft(14)
                              + "  " + (area / volume).ToString(CultureInfo.InvariantCulture).PadLeft(14) + "");
        }
    }