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

上一篇: C++回文程式實例 下一篇: C++阿姆斯壯數字