迭代阶乘实现

我在网上发现了多个用于定义 阶乘 的迭代解n。他们看起来像这样:

int Factorial(int number)

{

int factorial = 1;

for (int i = 1; i <= number; i++)

factorial *= i;

return factorial;

}

Factorial(0) = 1Factorial(1) = 1?因此,for循环内的counter变量应以

开头,因为它下面的所有内容都将产生 。

   for (int i = 2; i <= number; i++)

factorial *= i;

他们为什么使用 作为计数器的起始编号有某些原因吗?

回答:

没关系-1或2都可以,因为乘以1不会执行任何操作。但是,大多数循环以0或1开头,并且仅遵循该模式。同样,阶乘的定义通常表示为直到n的所有正整数的乘积,因此包括1。从本质上讲,1是一个更好的起点。

以上是 迭代阶乘实现 的全部内容, 来源链接: utcz.com/qa/415924.html

回到顶部