C++階乘
C++中的階乘程序:n
的階乘是所有正整數的乘積。 n
的階乘由n!
表示。 例如:
4! = 4*3*2*1 = 24
6! = 6*5*4*3*2*1 = 720
這裏,4!
發音爲「4階乘」。
階乘通常用於組合和排列(數學)。
有很多方法用C++語言編寫階乘程序。下面來看看看寫出階乘程序的兩種方法。
- 使用循環的階乘程序
- 使用遞歸的因子程序
使用循環的階乘程序
下面來看看看C++中的階乘程序使用循環。
#include <iostream>
using namespace std;
int main()
{
int i,fact=1,number;
cout<<"Enter any Number: ";
cin>>number;
for(i=1;i<=number;i++){
fact=fact*i;
}
cout<<"Factorial of " <<number<<" is: "<<fact<<endl;
return 0;
}
執行上面代碼,得到以下結果 -
Enter any Number: 5
Factorial of 5 is: 120
使用遞歸的階乘程序示例
下面來看看看C++中的階乘程序使用遞歸。
#include<iostream>
using namespace std;
int main()
{
int factorial(int);
int fact,value;
cout<<"Enter any number: ";
cin>>value;
fact=factorial(value);
cout<<"Factorial of a number is: "<<fact<<endl;
return 0;
}
int factorial(int n)
{
if(n<0)
return(-1); /*Wrong value*/
if(n==0)
return(1); /*Terminating condition*/
else
{
return(n*factorial(n-1));
}
}
執行上面代碼,得到以下結果 -
Enter any number: 6
Factorial of a number is: 720