Với n P r, trong đó P đại diện cho Hoán vị, n đại diện cho tổng số và r đại diện cho sự sắp xếp, nhiệm vụ là tính giá trị của nPr.
Hoán vị là sự sắp xếp dữ liệu theo một trình tự hoặc thứ tự. Hoán vị và tổ hợp khác nhau ở chỗ hoán vị là quá trình sắp xếp trong khi tổ hợp là quá trình lựa chọn các phần tử từ tập hợp đã cho.
Công thức hoán vị là -
nPr = (n!)/(n-r)!
Ví dụ
Input-: n=5 r=2 Output-: 20
Thuật toán
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 function to calculate the final 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
Ví dụ
#include<stdio.h> //function to calculate the factorial for npr int cal_n(int n){ if (n <= 1) return 1; return n*cal_n(n-1); } //function to calculate the final 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; }
Đầu ra
value of 5P2 is 20