Giải SGK Tin học lớp 10 Bài 17: Thực hành lập trình giải bài toán trên máy tính | Cánh diều

699

Toptailieu biên soạn và giới thiệu lời giải SGK Tin học lớp 10 Bài 17: Thực hành lập trình giải bài toán trên máy tính | Cánh diều hay, chi tiết sẽ giúp học sinh dễ dàng trả lời câu hỏi SGK Tin học 10 từ đó học tốt môn Tin học 10:

Giải SGK Tin học lớp 10 Bài 17: Thực hành lập trình giải bài toán trên máy tính | Cánh diều

Giải Tin học 10 trang 117

Bài 1 trang 117 Tin học 10: Cứu nạn

Em hãy mô tả thuật toán cho bài toán Cứu nạn sau đây bằng cách liệt kê các bước hoặc dùng sơ đồ khối.

Bài toán cứu nạn

Một tàu đánh cá có ngư dân bị tai nạn cần cấp cứu đã gọi điện về cơ sở y tế ở đảo gần nhất cách đó d (hải lí). Để người bị tai nạn được sơ cứu sớm hơn, tàu đánh cá đổi hướng, đi thẳng về phía đảo với vận tốc v1 (hải lí/giờ), đồng thời từ đảo người ta cũng cho một tàu cứu nạn có thiết bị y tế sơ cứu đi theo đường đó tới hướng tàu cá với vận tốc v2 (hải lí/giờ). Em hãy xác định sau bao lâu hai tàu gặp nhau, khi biết dữ liệu d, v1, v2.

Lời giải:

Vì mỗi giờ, khoảng cách giữa hai tàu giảm đi (v1 + v2) hải lí, vì vậy để hai tàu gặp nhau sẽ cần Cứu nạn - Em hãy mô tả thuật toán cho bài toán Cứu nạn (ảnh 1) giờ.

- Nhập dữ liệu cho v1, v2 và d

- Khoảng thời gian cần tính là Cứu nạn - Em hãy mô tả thuật toán cho bài toán Cứu nạn (ảnh 2) (giờ)

Bài 2 trang 117 Tin học 10: Dự trữ vacxin

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.

Bài toán Dự trữ vacxin

Để 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 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 bị 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 ), dòng thứ hai chứa 2 số nguyên pa và pb (0 ≤ pa, pb105).

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

Ví dụ:

Dự trữ vacxin - Với bài toán Dự trữ vacxin sau đây  (ảnh 1)

Lời giả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)

Dự trữ vacxin - Với bài toán Dự trữ vacxin sau đây  (ảnh 2)

Vận dụng trang 118 Tin học 10: Trong một hoạt động ngoại khóa của lớp, giáo viên chủ nhiệm đã chụp được một số bức ảnh, các bức ảnh được lưu trên máy tính có kích thước tương ứng là d1, d2, …, dn (đơn vị Kb).

Giáo viên dự định ghi một số đĩa CD làm phần thưởng cho học sinh. Đĩa CD mà giáo viên dùng chỉ có thể ghi tối đa W (đơn vị Kb). Vì tất cả các bức ảnh đều rất đẹp và thú vị nên giáo viên muốn lựa chọn các bức ảnh để ghi vào đĩa CD với tiêu chí càng nhiều bức ảnh được ghi vào đĩa CD càng tốt. Giáo viên băn khoăn và muốn biết số lượng tối đa các bức ảnh có thể ghi vào đĩa CD là bao nhiêu.

Em hãy chỉ ra kết quả từng bước thực hiện để có được chương trình nhận dữ liệu vào là các số nguyên W, d1, d2, …, dn và trả về số lượng tối đa các bức ảnh có thể ghi vào đĩa CD.

Trong một hoạt động ngoại khóa của lớp, giáo viên chủ nhiệm đã chụp ảnh  (ảnh 1)

Lời giải:

W = int(input("Nhập dung lượng tối đa đĩa có thể lưu trữ"))

print("Nhập dung lượng của từng bức tranh")

ds = [int(i) for i in input().split()]

ds.sort()

t = 0

s = 0

for i in range(0, len(ds)):

s = s + ds[i]

if s <= W:

t = t + 1

else:

break

print("Số lượng tối đa các bức ảnh có thể ghi vào đĩa là: ", t)

Trong một hoạt động ngoại khóa của lớp, giáo viên chủ nhiệm đã chụp ảnh  (ảnh 2)

 

Từ khóa :
Giải bài tập
Đánh giá

0

0 đánh giá