Với bài toán Dự trữ vacxin sau đây, hãy thực hiện từng bước theo hướng dẫn để có chương trình giải
244
12/06/2023
Bài 2 trang 117 Tin học 10: Với bài toán Dự trữ vacxin sau đây, hãy thực hiện từng bước theo hướng dẫn để có chương trình giải quyết được bài toán này.
Để sẵn sàng triển khai tiêm vacxin cho địa phương có nguy cơ bùng dịch cao, người ta cần dự trữ không ít hơn n liều vacxin. Hiện nay trong kho đang có m liều vacxin. Trong nước có hai cơ sở A và B sản xuất vacxin. Nếu làm việc hết công suất cơ sở A mỗi ngày sản xuất được pa liều, còn cơ sở B sản xuất được pb liều. Em hãy xác định sớm nhất sau bao nhiêu ngày sẽ có đủ n liều vacxin.
Dữ liệu: Đưa vào từ thiết vị vào chuẩn của hệ thống, dòng đầu tiên chứa 2 số nguyên n và m (0 ≤ n, m ≤108), dòng thứ hai chứa 2 số nguyên pa và pb (0 ≤ pa, pb ≤105).
Kết quả: Đưa ra từ thiết bị ra chuẩn của hệ thống một số nguyên là số ngày sớm nhất có đủ vacxin dự trữ theo kế hoạch.
Trả lời
- Sau mỗi ngày thì số vacxin đã có tăng lên (pa + pb) liều, điều này lặp lại cho đến khi số liều vacxin đã có không nhỏ hơn n.
- Thuật toán:
+ Nhập dữ liệu n, m, pa, pb
+ Khởi tạo giá trị cho biến t = 0
+ Sử dụng vòng lặp while cho biến t chạy cho đến khi m + (pa + pb) * n >=n thì dừng
- Chương trình:
n = int(input("Nhập số liều vacxin cần dự trữ "))
m = int(input("Nhập số liều vacxin đang có trong kho "))
pa = int(input("nhập số liều cơ sở A sản xuất được mỗi ngày "))
pb = int(input("nhập số liều cơ sở B sản xuất được mỗi ngày "))
t = 0
while m + (pa + pb) * t < n:
t = t + 1
print("Số ngày cần thiết là ", t)
Xem thêm các bài giải SGK Tin học lớp 10 Cánh diều hay, chi tiết khác:
Bài 15: Thực hành với kiểu dữ liệu danh sách
Bài 16: Kiểm thử và gỡ lỗi chương trình
Bài 17: Thực hành lập trình giải bài toán trên máy tính
Bài 18: Lập trình giải quyết bài toán trên máy tính
Bài 1: Nhóm nghề thiết kế và lập trình
Bài 2: Dự án nhỏ: Tìm hiểu về lập trình web, lập trình trò chơi và lập trình cho thiết bị di động