温馨提示×

c#重载怎么实现n的阶乘

c#
小亿
98
2024-03-19 17:11:40
栏目: 编程语言

在C#中,可以通过重载多个方法来实现计算n的阶乘。以下是一个示例代码:

using System;

class Factorial
{
    public static int CalculateFactorial(int n)
    {
        if (n == 0)
        {
            return 1;
        }
        else
        {
            return n * CalculateFactorial(n - 1);
        }
    }

    public static long CalculateFactorial(long n)
    {
        if (n == 0)
        {
            return 1;
        }
        else
        {
            return n * CalculateFactorial(n - 1);
        }
    }

    public static double CalculateFactorial(double n)
    {
        if (n == 0)
        {
            return 1;
        }
        else
        {
            return n * CalculateFactorial(n - 1);
        }
    }

    public static void Main()
    {
        int nInt = 5;
        long nLong = 10;
        double nDouble = 15.5;

        Console.WriteLine($"{nInt}! = {CalculateFactorial(nInt)}");
        Console.WriteLine($"{nLong}! = {CalculateFactorial(nLong)}");
        Console.WriteLine($"{nDouble}! = {CalculateFactorial(nDouble)}");
    }
}

在上面的示例中,我们定义了三个不同数据类型的重载方法,分别用于计算整数、长整数和双精度浮点数的阶乘。您可以根据需要添加更多重载方法来支持其他数据类型。

0