在C程序中计算nPr值的程序

给定n P r,其中P代表置换,n代表总数,r代表排列,任务是计算nPr的值。

排列是按顺序或顺序排列的数据。排列和组合在意义上是不同的,排列是排列的过程,而组合是从给定集合中选择元素的过程。

排列的公式是-

nPr = (n!)/(n-r)!

示例

Input-: n=5 r=2
Output-: 20

算法

Start
Step 1 -> declare function to calculate value of nPr
   int cal_n(int n)
      IF n <=1
         Return 1
End
return n*cal_n(n-1)
Step 2 -> Declare 函数计算最终npr-
   int nPr(int n, int r)
      return cal_n(n)/cal_n(n-r)
Step 3 -> In main()   Declare variables as int n=5, r=2
   Print nPr(n, r)
Stop

示例

#include<stdio.h>
//函数计算npr的阶乘
int cal_n(int n){
   if (n <= 1)
      return 1;
return n*cal_n(n-1);
}
//函数计算最终npr-
int nPr(int n, int r){
   return cal_n(n)/cal_n(n-r);
}
int main(){
   int n=5, r=2;
   printf("value of %dP%d is %d", n, r, nPr(n, r));
   return 0;
}

输出结果

value of 5P2 is 20