Chương trình trong Hình 2 khai báo hàm ptb1(), hàm này giải phương trình bậc nhất

Giải Tin học 10 Bài 10: Chương trình con và thư viện các chương trình con có sẵn

Hoạt động 2 trang 88 Tin học 10: Chương trình trong Hình 2 khai báo hàm ptb1(), hàm này giải phương trình bậc nhất một ẩn ax + b = 0. Khi gọi thực hiện, hàm ptb1() yêu cầu nhập các hệ số a, b từ bàn phím, biện luận và giải phương trình rồi đưa ra kết quả.

1) Em hãy soạn thảo chương trình ở Hình 2 đặt tên là “VD_ptb1.py”, sau đó chạy chương trình với các dữ liệu đầu vào như ở Hình 3 và đối chiếu kết quả.

2) Em hãy sửa lại chương trình “VD_ptb1.py” theo các bước trong Bảng 1, đặt tên là “Try_ptb1.py”, chạy thử và trả lời hai câu hỏi sau:

a) Chương trình “Try_ptb1.py” đã truyền trực tiếp hệ số a = 5, b = 4 vào lời gọi hàm ptb1(5, 4) kết quả khi chạy có khác gì với kết quả chạy chương trình ở Hình 2 không?

b) Vì sao trong chương trình “Try_ptb1.py”, thân của hàm không cần những câu lệnh nhập giá trị cho các hệ số a, b?

Bảng 1. Các bước sửa chương trình “VD_ptb1.py”

1) Bổ sung tham số a, b vào trong cặp ngoặc () ở dòng khai báo hàm, để được ptb1(a, b).

2) Xoá trong thân hàm hai lênh nhập hệ số a, b từ bàn phím.

3) Thay lời gọi ptb1() bằng ptb1(5, 4) để hàm thực hiện với a = 5, b = 4.

4) Thêm các lời gọi thực hiện hàm ptb1(a, b) tương ứng với cặp hệ số a = 0, b = 0 và a= 0, b = 4

Quảng cáo

Lời giải:

1) 

def ptb1(): #Giải phương trình bậc nhất

a = int(input("a = "))

b = int(input("b = "))

if a!= 0:

print("Phương trình có nghiệm duy nhất: ", -b/a)

elif b == 0:

print("Phương trình có vô số nghiệm")

else:

print("Phương trình vô nghiệm")

ptb1()

Chương trình trong Hình 2 khai báo hàm ptb1(), hàm này giải phương trình bậc nhất

2) 

def ptb1(a, b): #Giải phương trình bậc nhất

if a!= 0:

print("Phương trình có nghiệm duy nhất: ", -b/a)

elif b == 0:

print("Phương trình có vô số nghiệm")

else:

print("Phương trình vô nghiệm")

ptb1(5, 4)

ptb1(0, 0)

ptb1(0, 4)

Chương trình trong Hình 2 khai báo hàm ptb1(), hàm này giải phương trình bậc nhất

a) Kết quả khi chạy giống với kết quả chạy chương trình của Hình 2.

b) Do ta đã truyền trực tiếp giá trị của a và b vào hàm ptb1 nên không cần những câu lệnh nhập giá trị cho các hệ số a, b trong thân hàm.

Quảng cáo


Xem thêm lời giải bài tập Tin học lớp 10 Cánh diều hay nhất, ngắn gọn khác:

Xem thêm các tài liệu học tốt lớp 10 hay khác:

ĐỀ THI, GIÁO ÁN, SÁCH LUYỆN THI DÀNH CHO GIÁO VIÊN VÀ PHỤ HUYNH LỚP 10

Bộ giáo án, bài giảng powerpoint, đề thi, sách dành cho giáo viên và gia sư dành cho phụ huynh tại https://tailieugiaovien.com.vn/ . Hỗ trợ zalo VietJack Official

Tổng đài hỗ trợ đăng ký : 084 283 45 85

Đã có app VietJack trên điện thoại, giải bài tập SGK, SBT Soạn văn, Văn mẫu, Thi online, Bài giảng....miễn phí. Tải ngay ứng dụng trên Android và iOS.

Theo dõi chúng tôi miễn phí trên mạng xã hội facebook và youtube:

Nếu thấy hay, hãy động viên và chia sẻ nhé! Các bình luận không phù hợp với nội quy bình luận trang web sẽ bị cấm bình luận vĩnh viễn.


Giải bài tập lớp 10 Cánh diều khác
Tài liệu giáo viên