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 theo dõi bài viết nhé!

Làm quen với Giai thừa trong C++

Làm quen với Giai thừa trong C++

I. Khái niệm Giai thừa

Giai thừa là 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.

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

Lưu ý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

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

  • 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

Đề: 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

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

  • Đầ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 bằng vòng lặp for.

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 vòng lặp

Xem thêm:

  • Selection sort là gì? Thuật toán sắp xếp chọn Selection sort trong C/C++
  • Insertion sort là gì? Thuật toán sắp xếp chèn Insertion sort trong C/C++
  • Vòng lặp For là gì? Cách dùng vòng lặp For trong C/C++

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 viết giai thừa trong C/C++. Chúc các bạn thực hiện thành công!

Nguôn: nguyenvanhieu.vn

Video liên quan

By Admin