Chuyển đến nội dung chính

Tính giai thừa trong c

Làm thế nào để bạn thực hiện cách tính giai thừa trong C? Trong lập trinh C ta có thể thực hiên tính giai thừa trong c theo hai cách chính sau: sử dụng vòng lặp và sử dụng hàm đệ qui và tạo hàm. Hãy cùng tìm hiểu nội dung của từng cách được đề cập đến trong bài viết dưới đây nhé!

tính giai thừa trong c (1)
tính giai thừa trong c (1)

1. Giai thừa là gì?

Chương trình giai thừa trong ngôn ngữ lập trình C: Ba phương pháp để tìm giai thừa, sử dụng vòng lặp for, sử dụng đệ quy và bằng cách tạo hàm. Như các bạn đã biết, trong toán học giai thừa được biểu diễn bằng cách sử dụng kí hiệu: ‘!’. Ví dụ vậy năm giai thừa sẽ được viết là (5!), N giai thừa là (n!). Ngoài ra, n! = n * (n-1) * (n-2) * (n-3) … 3.2.1 và giai thừa 0 được định nghĩa là một ví dụ, 0! = 1.

Giai thừa của một số ‘n’ là sản phẩm của tất cả các số từ 1 đến số ‘n’

nó được ký hiệu bằng n !. Ví dụ n = 5 thì giai thừa 5 sẽ là 1 * 2 * 3 * 4 * 5 = 120. 5! = 120

2. Các cách tính giai thừa trong lập trình C

Bài tập: Viết một chương trình C để tính giai thừa của một số bất kỳ được nhập từ người dùng

Để tính giai thừa trong C có một trong 3 phương pháp sau:

2.1 Tính giai thừa trong C sử dụng vòng lặp for

Ví dụ:

#include

int main()

{

   int c, n, fact = 1;

   printf("nhap so de tinh giai thua\n");

   scanf("%d", &n);

   for (c = 1; c <= n; c++) fact = fact * c;      

   printf("giai thua cua %d = %d\n", n, fact);

   return 0;
}

Kết quả hiển thị:

Nhap so de tinh giai thua 6

Giai thua cua 6 = 720

2.2 Viết hàm tính giai thừa sử dụng hàm đệ quy

Các bước thực hiện:

Khai báo nguyên mẫu cho hàm có tên rec () được sử dụng để tính toán giá trị giai thừa.

Khai báo hai số nguyên a và thực tế.

Nhắc thông báo để nhập bất kỳ số nào để tính giai thừa.

Cho phép người dùng nhập số bằng scanf ().

Sử dụng hàm rec () để tính giá trị giai thừa bằng phương thức đệ quy và trả về giá trị đó.

In giá trị trả về cho màn hình bằng lệnh printf ().

Ví dụ:

#include

long tinhGiaithua(int n) {

   if (n > 0) {

      return n * tinhGiaithua(n - 1);

   }
   else {

      return 1;

   }

}

/**

* Ham main

*/

int main() {

   int a = 5;

   int b = 0;

   int c = 10;

   printf("Giai thua cua %d la: %d \n", a, tinhGiaithua(a));

   printf("Giai thua cua %d la: %d \n", b, tinhGiaithua(b));

   printf("Giai thua cua %d la: %d", c, tinhGiaithua(c));

}

Kết quả hiển thị:

tính giai thừa trong c (2)
tính giai thừa trong c (2)

Phép đệ quy là một kỹ thuật trong đó một hàm gọi chính nó, ví dụ, trong hàm giai thừa trên mã đang gọi chính nó. Để giải quyết vấn đề bằng cách sử dụng đệ quy, trước tiên bạn phải thể hiện giải pháp của nó ở dạng đệ quy.

2.3 Viết hàm tính giai thừa không sử dụng đệ quy

Các bước thực hiện:

Khai báo nguyên mẫu cho hàm có tên factorial () được sử dụng để tính toán giá trị giai thừa.

Khai báo hai số nguyên a và thực tế.

Nhắc thông báo để nhập bất kỳ số nào để tính giai thừa.

Cho phép người dùng nhập số bằng scanf ().

Sử dụng hàm factorial () để tính giá trị giai thừa và trả về giá trị đó.

In giá trị trả về cho màn hình bằng lệnh printf ().

Ví dụ: chương trình tính giai thừa trong C không sử dụng phương pháp đệ quy:

#include

long tinhGiaithua(int n) {

   int i;

   long giai_thua = 1;

   if (n == 0 || n == 1) {

      return giai_thua;

   }
   else {

      for (i = 2; i <= n; i++) {

         giai_thua *= i;

      }

      return giai_thua;

   }

}

/**

* Ham main

*/

int main() {

   int a = 5;

   int b = 0;

   int c = 10;

   printf("Giai thua cua %d la: %d \n", a, tinhGiaithua(a));

   printf("Giai thua cua %d la: %d \n", b, tinhGiaithua(b));

   printf("Giai thua cua %d la: %d", c, tinhGiaithua(c));

}

 

Kết quả:

tính giai thừa trong c (3)
tính giai thừa trong c (3)

The post Tính giai thừa trong c first appeared on Techacademy.



source https://techacademy.edu.vn/tinh-giai-thua-trong-c/

Nhận xét

Bài đăng phổ biến từ blog này

Biến Trong PHP

Khái niệm về biến trong PHP là kiến thức nền tảng trong lập trình PHP mà hầu như lập trình viên nào cũng phải học đầu tiên. Trong bài này chúng ta sẽ đi tìm hiểu khái niệm thế nào là biến. I. Biến trong php để làm gì Bạn còn nhớ môn Đại Số ở  Trường Không ? Dạng như , x = 1 , y = 2 , z =3 Bạn còn nhớ với mỗi từ ta có thể gán 1 giá trị (vd : x = 2 , y = 123 , z = 52 v.v ) và bạn sẽ dùng mấy thông tin đó để tính 1 giá trị nào đó của d chẳng hạn . Tất cả những cái trên được gọi là Biến PHP , và biến được dùng để giữ 1 giá trị nhất định (x=2) hoặc là các bài toán như ( d = a+b+c ) trong đó a,b,c là các hằng số có giá trị bất kỳ ( vd : a = 1 , b = 2 , c = 3 thì d = a + b + c = 6 ) Ví dụ: <!DOCTYPE html> <html> <body> <?php //Đây là chú thích 1 dòng /* Đây là chú thích Nhiều Dòng */ ?> </body> </html> Biến PHP Với đại số, các biến PHP được sử dụng để giữ các giá trị hoặc biểu thức. Một biến có thể có một tên ngắn, như x, hoặc một cái tên dài ...

Biến Trong PHP

Khái niệm về biến trong PHP là kiến thức nền tảng trong lập trình PHP mà hầu như lập trình viên nào cũng phải học đầu tiên. Trong bài này chúng ta sẽ đi tìm hiểu khái niệm thế nào là biến. I. Biến trong php để làm gì Bạn còn nhớ môn Đại Số ở  Trường Không ? Dạng như , x = 1 , y = 2 , z =3 Bạn còn nhớ với mỗi từ ta có thể gán 1 giá trị (vd : x = 2 , y = 123 , z = 52 v.v ) và bạn sẽ dùng mấy thông tin đó để tính 1 giá trị nào đó của d chẳng hạn . Tất cả những cái trên được gọi là Biến PHP , và biến được dùng để giữ 1 giá trị nhất định (x=2) hoặc là các bài toán như ( d = a+b+c ) trong đó a,b,c là các hằng số có giá trị bất kỳ ( vd : a = 1 , b = 2 , c = 3 thì d = a + b + c = 6 ) Ví dụ: <!DOCTYPE html> <html> <body> <?php //Đây là chú thích 1 dòng /* Đây là chú thích Nhiều Dòng */ ?> </body> </html> Biến PHP Với đại số, các biến PHP được sử dụng để giữ các giá trị hoặc biểu thức. Một biến có thể có một tên ngắn, như x, hoặc một cái tên dài ...

Mảng Trong PHP

Mảng là một cấu trúc dữ liệu lưu trữ một hoặc nhiều loại giá trị tương tự trong một giá trị duy nhất. Ví dụ: nếu bạn muốn lưu trữ 100 số thì thay vì xác định 100 biến dễ dàng để xác định một mảng có độ dài 100. Tìm hiểu về Mảng (Array) trong PHP được sử dụng để tạo một mảng. Mảng là một trong những nội dung cơ bản rất quan trọng trong khóa học lập trình PHP , vì thế học viên nên nắm bắt thật chắc về mảng. mảng php Trong PHP, có ba loại mảng: Mảng được lập chỉ mục – Mảng có chỉ mục số Mảng kết hợp – Mảng với các phím được đặt tên Mảng đa chiều – Mảng chứa một hoặc nhiều mảng 1. Mảng được lập chỉ mục – Mảng có chỉ mục số Các mảng này có thể lưu trữ số, chuỗi và bất kỳ đối tượng nào nhưng chỉ mục của chúng sẽ được biểu diễn bằng số. Theo chỉ mục mảng mặc định bắt đầu từ số không. Thí dụ Sau đây là ví dụ cho thấy cách tạo và truy cập mảng số. Ở đây chúng ta đã sử dụng hàm array () để tạo mảng. Hàm này được giải thích trong tham chiếu hàm.   /* First method to create arr...