Câu hỏi:

13/07/2024 10,907

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: Bộ 20 đề minh họa Toán, Lí, Hóa, Văn, Sử, Địa…. form chuẩn 2025 của Bộ giáo dục (chỉ từ 69k).

20 đề Toán 20 đề Văn 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,449

Câu 2:

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

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

Câu 3:

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 4,981

Câu 4:

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 4,575

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,235

Câu 6:

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

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

Bình luận


Bình luận