btvn.vn
Tìm kiếm

Giải đề · Lớp 10 · Tin học

Tin học 10: chữa đề ôn cuối học kỳ I – Kết nối tri thức, phần chung, đề 1

22 câu ôn dữ liệu, lưu trữ và Python đến rẽ nhánh. Có bài tính dung lượng học liệu và viết chương trình tính tiền, thử các giá trị biên. BTVN biên soạn.

Câu 22 · 22/22

Đề bài

Một cửa hàng bán vở giá 12 000 đồng/quyển. Nếu mua từ 10 quyển trở lên thì giảm 10 000 đồng trên tổng tiền của lần mua; dưới 10 quyển không giảm. Số lượng `n` là số nguyên từ 0 đến 100. a) Nêu dữ liệu đầu vào và kết quả đầu ra. b) Viết chương trình Python 3 đọc `n` từ bàn phím rồi in số tiền phải trả (đồng). Giả sử đầu vào đúng phạm vi, không cần xử lí nhập sai. c) Cho biết số tiền phải trả khi n = 0, n = 9 và n = 10; giải thích vì sao cần thử mốc 10.

Hướng dẫn giải

Hướng dẫn đối chiếu (2,5 điểm): a) Đầu vào: số nguyên n trong [0; 100]. Đầu ra: số tiền phải trả sau khi áp dụng quy tắc giảm giá. (0,5 điểm: mỗi ý 0,25.) b) Một chương trình tham khảo: ```python n = int(input()) tien = 12000 * n if n >= 10: tien = tien - 10000 print(tien) ``` (1,25 điểm: nhập/chuyển kiểu đúng 0,25; tính tiền ban đầu 0,25; điều kiện và giảm đúng 0,5; in kết quả 0,25.) c) n = 0: **0 đồng**; n = 9: **108 000 đồng**; n = 10: **110 000 đồng**. Mốc 10 là trường hợp đầu tiên được giảm, giúp phát hiện lỗi dùng `n > 10` thay `n >= 10`. (0,75 điểm: ba kết quả 0,5; lí do thử mốc 0,25.) Chấp nhận chương trình đúng tương đương, như dùng if/else. Cần giữ điều kiện từ 10 trở lên và chỉ giảm một lần, không giảm trên từng quyển.