迭代阶乘实现
我在网上发现了多个用于定义 阶乘 的迭代解n
。他们看起来像这样:
int Factorial(int number){
int factorial = 1;
for (int i = 1; i <= number; i++)
factorial *= i;
return factorial;
}
不Factorial(0) = 1
和Factorial(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