Câu hỏi:

13/07/2024 12,348

Viết một chương trình tính giai thừa của một số nguyên dương n. Với n được nhập từ bàn phím.

Định nghĩa giai thừa: giai thừa của 1 số là tích các số liên tiếp từ 1 đến số đó. Trường hợp đặc biệt, giai thừa của 0 và 1 là 1.

Ví dụ, n = 8 thì kết quả đầu ra phải là 1*2*3*4*5*6*7*8 = 40320.

Có 2 cách để viết chương trình tính giai thừa trong python:

· Tính giai thừa không sử dụng hàm đệ quy

· Tính giai thừa có sử dụng hàm đệ quy

Sách mới 2k7: Tổng ôn Toán, Lí, Hóa, Văn, Sử, Địa... kỳ thi tốt nghiệp THPT Quốc gia 2025, đánh giá năng lực (chỉ từ 70k).

Tổng ôn Toán-lý hóa Văn-sử-đia Tiếng anh & các môn khác

Quảng cáo

Trả lời:

verified
Giải bởi Vietjack

1. Tính giai thừa không sử dụng đệ quy

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

Code mẫu: tính giai thừa không sử dụng hàm đệ quy

 * tinh giai thua

 *

 * @author viettuts.vn

 * @param n: so nguyen duong

 * @return giai thua cua so n

"""

def tinhgiaithua(n):

    giai_thua = 1;

    if (n == 0 or n == 1):

        return giai_thua;

    else:

        for i in range(2, n + 1):

            giai_thua = giai_thua * i;

        return giai_thua;

n = int(input("Nhập số nguyên dương n = "));

print("Giai thừa của", n, "là", tinhgiaithua(n));

2. Tính giai thừa có sử dụng đệ quy

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

Code mẫu: tính giai thừa sử dụng hàm đệ quy

n = int(input("Nhập số cần tính giai thừa: "))

def giaiThua(n):

    if n == 0:

        return 1

    return n * giaiThua(n - 1)

print (giaiThua(n))

CÂU HỎI HOT CÙNG CHỦ ĐỀ

Câu 1:

Siêu văn bản là gì?

Xem đáp án » 14/03/2023 18,896

Câu 2:

Thông tin là gì? Tiếp nhận thông tin là gì?

Xem đáp án » 13/07/2024 17,691

Câu 3:

Viết chương trình giải phương trình bậc 2 trong Python. Phương trình bậc 2 có dạng: ax2+ bx+c=0.

Xem đáp án » 13/07/2024 5,930

Câu 4:

Khóa chính của bảng thường được chọn theo tiêu chí nào?

Xem đáp án » 13/03/2023 5,301

Câu 5:

Viết chương trình nhập chiều dài, chiều rộng hình chữ nhật. Tính chu vi, diện tích hình chữ nhật và in ra màn hình.

Xem đáp án » 13/07/2024 4,758

Câu 6:

Tính S(n) = 1 + 2 + 3 + … + n bằng C / C++

Xem đáp án » 13/07/2024 4,601

Bình luận


Bình luận