1. Cú pháp sử dụng hàm math.perm() trong Python

Hàm math.perm() trong Python được sử dụng để trả về số cách chọn k phần tử từ tập hợp có n phần tử. Việc lựa chọn này là có thứ tự và không lặp lại. Cách chọn này trong toán học sẽ được gọi là một Chỉnh hợp chập k của n.

Một chỉnh hợp chập k của n sẽ được tính theo công thức sau:

Trong Python, để tính một chỉnh hợp A chập k của n khi đó ta sẽ chỉ cần sử dụng khai báo cú pháp như sau:

math.perm(n, k)

Tham số:

  • là số lượng phần tử trong tập hợp
  • là số cách chọn phần tử trong phần tử
Giá trị trả về: Một kiểu giá trị int, là kết quả trả về sau khi tính chỉnh hợp chập k của n
Phiên bản Python: 3.8

Lưu ý:

  • Các tham số được truyền trong hàm này phải là số nguyên dương. Nếu không hàm này sẽ thực thi và gây ra lỗi ValueError!
  • Nếu hàm chỉ được truyền vào tham số n nghĩa là math.perm(n) – thì khi đó hàm này sẽ không tính chỉnh hợp chập k của n nữa và thay vào đó hàm sẽ tính n giai thừa (n!).

2. Ví dụ hàm math.perm() trong Python

Ví dụ dưới đây, sử dụng hàm math.perm() để thực hiện chọn ra 5 phần tử (k = 5) trong tập hợp 7 phần tử (n=7) – việc lựa chọn này sẽ có thứ tự và không lặp lại. Hay nói cách khác là chỉnh hợp chập 5 của 7 như sau:

import math

# So luong phan tu trong tap hop
n = 7

# So cach chon
k = 5

# Tinh chinh hop chap 5 cua 7
P = math.perm(n, k)
print(P)

Kết quả:

2520

Ví dụ tiếp theo, chúng tôi chỉ truyền vào hàm math.perm(n) một tham số đó là – khi đó hàm này sẽ chuyển sang tính n giai thừa (n!) như sau:

import math

# So luong phan tu trong tap hop
n = 7

P = math.perm(n)
print(P)

Kết quả:

5040

Ví dụ cuối cùng, khi hàm math.perm() được truyền vào là 1 hoặc 2 tham số KHÔNG nguyên dương, khi đó một lỗi sẽ sảy ra khi thực thi chương trình như sau:

import math

# So luong phan tu trong tap hop
n = -7

# So cach chon
k = -5

# Tinh chinh hop chap -5 cua -7
P = math.perm(n, k)
print(P)

Kết quả:

Traceback (most recent call last):
  File "./prog.py", line 9, in <module>
ValueError: n must be a non-negative integer