`*` $\texttt{Tóm tắt:}$
`*` Liều vacxin cần dự trữ: ≥ n
`*` Trong kho có: m liều
`*` Cơ sở A sản xuất: pa liều
`*` Cơ sở B sản xuất: pb liều
`*` Số ngày t ít nhất để có đủ n liều vacxin?
`" "`
`*` Ngày thứ `1` số liều vacxin: m + pa × 1 + pb × 1 = m + (pa + pb) × 1
`*` Ngày thứ `2` số liều vacxin: m + pa × 2 + pb × 2 = m + (pa + pb) × 2
`*` Ngày thứ `3` số liều vacxin: m + pa × 3 + pb × 3 = m + (pa + pb) × 3
`*` ...
`*` Ngày thứ `t` số liều vacxin: m + (pa + pb) × t ≥ n thì ngừng sản xuất
`" "`
`*` $\texttt{Đoạn chương trình:}$
t = 0
while m + (pa + pb) * t < n:
t = t + 1
`*` Hoạt động: Trong khi số liều có ở ngày thứ t còn nhỏ hơn n thì tiếp tục sản xuất và biến t cũng tăng lên 1 đơn vị. Tóm lại, biến t là số ngày, số ngày sẽ tăng lên 1 khi số liều vacxin chưa đủ.
`" "`
`*` t = 0 không phải t = 1 hay t = 2 vì trong trường hợp số vacxin trong kho có thể lớn hơn hoặc bằng liều cần dữ trữ, lúc đó không cần thời gian để sản xuất thêm vacxin nên "Số ngày cần thiết sẽ là 0", nếu ban đầu t = 5 mà số liều trong kho đã lớn hơn số liều cần dự trự thì kết quả "Số ngày cần thiết là 5" không chính xác.
`" "`
`*` Dùng lệnh lặp while trong trường hợp chưa xác định cụ thể được số vòng cần lặp, vì chúng ta chưa xác định cụ thể là ngày nào có đủ vacxin dự trữ nên sử dụng vòng lặp while, số ngày sẽ bắt đầu từ 0 đến x nào đó mà điều kiện m + (pa + pb) × x < n trả về giá trị False. Điều kiện m + (pa + pb) × x < n trả về giá trị False khi m + (pa + pb) × x ≥ n, lúc này số liều vacxin ≥ n
`" "`
`*` t = t + 1: Tăng giá trị biến t lên 1 đơn vị và gán lại cho t. Tại sao không là t = t + 2, với t = t + 2 thì các giá trị mà t có thể nhận được là = {0, 2, 4, 6, ...} có nghĩa số ngày cần thiết có thể là {0, 2, 4, 6, ...}, kết quả sẽ không chính xác nếu số ngày thực sự cần có thể là các con số {1, 3, 5, 7, ...}. Với t = t + 1 thì các giá trị mà t có thể nhận là {0, 1, 2, 3, 4, 5, ...}, khi m + (pa + pb) * t ≥ n ngay lập tức vòng lặp while kết thúc và số ngày cần thiết sẽ được in ra.
Tin học là một ngành khoa học chuyên nghiên cứu quá trình tự động hóa việc tổ chức, lưu trữ, xử lý và truyền dẫn thông tin của một hệ thống máy tính cụ thể hoặc trừu tượng. Tin học bao hàm tất cả các nghiên cứu và kỹ thuật có liên quan đến việc mô phỏng, biến đổi và tái tạo thông tin. Hãy tận dụng sức mạnh của tin học để giải quyết các vấn đề và sáng tạo ra những giải pháp mới!
Lớp 10 - Năm đầu tiên ở cấp trung học phổ thông, chúng ta sẽ có nhiều bạn bè mới đến từ những nơi khác nhau. Ngôi trường mới, xa nhà hơn, mở ra một thế giới mới với nhiều điều thú vị. Hãy mở lòng đón nhận và tận hưởng những trải nghiệm mới!
Copyright © 2024 Giai BT SGK