Giai thừa là gì? Cách viết chương trình tính giai thừa trong C/C++

Giai thừa là một phép toán vô cùng quan trọng trong toán học. Trong lập trình, giai thừa được sử dụng rất nhiều trong các bài tập lập trình căn bản. Vậy giai thừa là gì? Làm sao để viết chương trình tính giai thừa trong C/C++. Cùng Vanhoadoisong theo dõi bài viết nhé!

Khái niệm Giai thừa

Lý thuyết

Giai thừa là một toán tử một ngôi trên tập hợp các số nguyên dương. Nói một cách đơn giản thì giai thừa là tích các số tự nhiên dương bắt đầu từ 1 đến n với n là số tự nhiên dương bất kỳ cho trước.

Công thức

  • n! = 1 x 2 x 3 x … x n
  • (n + 1)! =n! (n + 1)

Lưu ý:

  • n là số nguyên dương (n > 0)
  • 0! = 1
Ví dụ về giai thừa
Ví dụ về giai thừa

Viết chương trình tính giai thừa trong C, C++ dùng đệ quy

Giải thuật

  • Nếu n=0 hoặc n=1 thì ta có kết quả là 1.
  • Nếu n>1 thì ta sẽ dùng công thức truy hồi để tính (n-1)! rồi sau đó nhân với n.

Cú pháp: 

int Giaithua(int n);

{

if (n==1)

return if;

return n * Giaithua(n-1)

}

Giải thuật giai thừa bằng đệ quy
Giải thuật giai thừa bằng đệ quy

Code chương trình tính giai thừa trong C, C++ bằng đệ quy

Đề: Nhập một số nguyên dương n bất kỳ. Tính n!

Code: Chương trình tính giai thừa bằng đệ quy.

Code chương trình tính giai thừa trong C, C++ bằng đệ quy
Code chương trình tính giai thừa trong C, C++ bằng đệ quy

Viết chương trình tính giai thừa trong C, C++ bằng vòng lặp

Giải thuật

  • Đầu tiên khởi tạo một biến Giaithua = 1.
  • Cho vòng lặp chạy từ 1 đến n. Với mỗi giá trị của i thì ta gán Giaithua = Giaithua * i.

Cú pháp: 

int Giaithua(int n)

{

int Giaithua= 1;

for (int i = 1; i <= n, i++)

Giaithua *= i;

return Giaithua;

}

Giải thuật giai thừa bằng đệ quy
Giải thuật giai thừa bằng đệ quy

Code chương trình tính giai thừa trong C, C++ bằng đệ quy

Code: Chương trình tính giai thừa bằng vòng lặp for.

Code chương trình tính giai thừa trong C, C++ bằng vòng lặp
Code chương trình tính giai thừa trong C, C++ bằng vòng lặp

Xem thêm:

Hy vọng bài viết này sẽ giúp bạn hiểu thêm về giai thừa cũng như cách tính giai thừa trong C/C++. Chúc các bạn thực hiện thành công! 

Nguồn: nguyenvanhieu.vn

0/5 (0 Reviews)

Xem nhiều

Trần Đặng Thùy Trang
Trần Đặng Thùy Trang
Mình là Thùy Trang, một người yêu thích SEO và content, luôn tràn đầy năng lượng cùng đam mê với việc sáng tạo nội dung. Với kinh nghiệm làm việc trong lĩnh vực này, mình luôn cố gắng tối ưu hóa nội dung để giúp bạn dễ dàng tìm thấy những thông tin mình cần trên VANHOADOISONG.

Để lại bình luân

Nhập bình luận tại đây
Để lại tên bạn ở đây