Hãy nêu ví dụ về một bài toán trong thực tế có sử dụng hàm để viết chương trình.

Câu 3: Hãy nêu ví dụ về một bài toán trong thực tế có sử dụng hàm để viết chương trình. 

Bài toán: Tính tiền điện

Mô tả: Một công ty điện lực tính tiền điện cho khách hàng dựa trên số kWh tiêu thụ. Giá điện được chia thành các bậc thang khác nhau:

Bậc 1: 0-50 kWh, giá 1.678 đồng/kWh

Bậc 2: 51-100 kWh, giá 1.734 đồng/kWh

Bậc 3: 101-200 kWh, giá 2.014 đồng/kWh

... (các bậc khác tương tự)

Yêu cầu: Viết chương trình tính tiền điện cho khách hàng khi biết số kWh tiêu thụ.


Giải quyết bằng hàm:

def tinh_tien_dien(so_kwh):

    """Tính tiền điện dựa trên số kWh tiêu thụ."""

    if so_kwh <= 50:

        tien = so_kwh * 1678

    elif so_kwh <= 100:

        tien = 50 * 1678 + (so_kwh - 50) * 1734

    elif so_kwh <= 200:

        tien = 50 * 1678 + 50 * 1734 + (so_kwh - 100) * 2014

    # ... (xử lý các bậc khác)

    else :

        tien = 0

    return tien

 

# Chương trình chính

kwh = int(input("Nhập số kWh tiêu thụ: "))

tien_dien = tinh_tien_dien(kwh)

print("Tiền điện cần thanh toán:", tien_dien, "đồng")

Giải thích:

Hàm tinh_tien_dien(so_kwh): 

Nhận vào số kWh tiêu thụ (so_kwh) làm đầu vào.

Sử dụng cấu trúc if-elif-else để xác định bậc thang giá điện phù hợp.

Tính toán số tiền điện tương ứng và gán cho biến tien.

Trả về giá trị của biến tien.

Chương trình chính: 

Nhập số kWh tiêu thụ từ người dùng.

Gọi hàm tinh_tien_dien để tính tiền điện.

In kết quả ra màn hình.

Lợi ích của việc sử dụng hàm:

Tái sử dụng mã: Hàm tinh_tien_dien có thể được sử dụng lại nhiều lần với các giá trị so_kwh khác nhau.

Dễ đọc và bảo trì: Chương trình trở nên dễ đọc và dễ hiểu hơn nhờ việc chia nhỏ thành các phần có chức năng rõ ràng.

Chia để trị: những bài toán phức tạp có thể chia nhỏ thành các bài toán nhỏ hơn, và mỗi bài toán nhỏ hơn có thể được giải quyết bằng một hàm.


Bình luận

Giải bài tập những môn khác