Máy Tính Giai Thừa (n!)
Tính giai thừa n! tức thì, hiển thị đầy đủ chuỗi phép nhân. Kết quả lớn tự chuyển sang ký hiệu khoa học và giải thích vì sao 0! bằng 1.
Cách dùng công cụ
Nhập một số nguyên n bất kỳ từ 0 đến 5000. Công cụ nhân tất cả các số nguyên từ n xuống 1, hiển thị đầy đủ chuỗi phép nhân với n nhỏ (hoặc rút gọn với n lớn), và cho ra kết quả chính xác — kèm dạng ký hiệu khoa học khi số chữ số quá nhiều để đọc.
Giai thừa là gì?
Giai thừa của một số nguyên không âm n, ký hiệu n!, là tích của mọi số nguyên dương từ n xuống 1:
Ngoài ra còn có cách mô tả đệ quy — mỗi giai thừa tái sử dụng giai thừa trước nó:
Vì sao 0! = 1
Thoạt nhìn có vẻ lạ — "nhân không có gì" sao lại ra 1 chứ không phải 0? Có hai lý do khiến đây là quy ước đúng:
- Tích rỗng. Giai thừa là tích của một danh sách số. Khi danh sách rỗng (n = 0, không có số nào từ 0 xuống 1 để nhân), quy ước chuẩn cho tích rỗng là 1 — tương tự tổng rỗng được quy ước là 0. Đây là phần tử trung hòa của phép nhân: nhân với "không có gì" phải giữ nguyên giá trị khởi điểm (1).
- Công thức đệ quy cần điều đó. Quy tắc phải đúng tại : . Vì , điều đó buộc .
Còn có cách hiểu qua đếm: số cách sắp xếp không phần tử nào là 1 — chỉ có đúng một cách sắp xếp tập rỗng (không làm gì cả).
Giai thừa tăng trưởng bùng nổ
Mỗi bước nhân với một số lớn hơn bước trước, nên giai thừa vượt qua cả tốc độ tăng trưởng theo hàm mũ:
| n | n! |
|---|---|
| 5 | 120 |
| 10 | 3.628.800 |
| 13 | 6.227.020.800 |
| 20 | 2.432.902.008.176.640.000 |
| 100 | ≈ 9,3326 × 10¹⁵⁷ (158 chữ số) |
Đến , kết quả đã vượt 6 tỷ. Đến , kết quả đã vượt . Đây chính là lý do các thuật toán "thử mọi cách sắp xếp" (duyệt hoán vị vét cạn) trở nên bất khả thi về mặt tính toán khi danh sách vượt khoảng 15-20 phần tử — vì số cách sắp xếp chính là n!.
Giai thừa xuất hiện ở đâu
- Đếm cách sắp xếp (hoán vị). n! là số cách sắp xếp n vật thể phân biệt thành một hàng. Hoán vị và tổ hợp (#DM02) đều xây dựng trực tiếp trên giai thừa.
- Xác suất và thống kê. Hệ số nhị thức, phân phối siêu bội và nhiều công thức xác suất tổ hợp đều rút gọn thông qua giai thừa.
- Khai triển chuỗi. Chuỗi Taylor như dùng giai thừa ở mẫu số mỗi số hạng.
Ví dụ minh họa — 5!
- Định nghĩa: nhân tất cả các số nguyên từ 5 xuống 1.
Vậy 5! = 120.
Câu hỏi thường gặp
- 0 giai thừa (0!) bằng bao nhiêu?
- 0! = 1, theo định nghĩa. Giai thừa là tích các số nguyên từ n xuống 1; khi danh sách rỗng (n = 0, không có số nào từ 0 xuống 1 để nhân), quy ước tích rỗng là 1 — giống như tổng rỗng được quy ước là 0. Quy ước này còn giữ cho công thức đệ quy đúng tại : .
- 5 giai thừa bằng bao nhiêu?
- 5! = 5 \times 4 \times 3 \times 2 \times 1 = 120.
- Cách tính giai thừa như thế nào?
- Nhân tất cả các số nguyên từ n xuống 1. Ví dụ . Ngoài ra còn có công thức đệ quy nhanh hơn: , tận dụng lại kết quả giai thừa trước đó.
- Vì sao giai thừa tăng nhanh đến vậy?
- Mỗi bước nhân với một số lớn hơn bước trước, nên giai thừa tăng nhanh hơn cả hàm mũ. đã vượt 6 tỷ, còn vượt — lớn hơn cả số giây kể từ khi vũ trụ hình thành. Đây là lý do các thuật toán duyệt mọi hoán vị của một danh sách trở nên bất khả thi khi danh sách vượt khoảng 15-20 phần tử.
- Giai thừa được dùng để làm gì?
- Giai thừa dùng để đếm số cách sắp xếp. Số cách sắp xếp n phần tử phân biệt thành một hàng là n!, đây là nền tảng của hoán vị () và tổ hợp (). Giai thừa còn xuất hiện trong xác suất, thống kê và khai triển chuỗi như .
- Có tính được giai thừa của số âm hoặc phân số không?
- Không, với định nghĩa tích đơn giản này — giai thừa chỉ định nghĩa cho số nguyên không âm (0, 1, 2, 3, …). Số nguyên âm làm công thức đệ quy chia cho 0, còn số không nguyên cần đến hàm Gamma phức tạp hơn, ngoài phạm vi công cụ này.
- Công cụ này tính được giai thừa lớn nhất là bao nhiêu?
- Tới 5000!, kết quả đã hơn 16.000 chữ số. Mọi phép tính đều dùng số nguyên lớn (big-integer) chính xác tuyệt đối — không làm tròn dấu phẩy động — và kết quả trên 15 chữ số sẽ kèm ký hiệu khoa học để dễ đọc hơn.