C3-13 · Tìm lỗi: cảm nhận nhiệt độ
Xem dạng PDF
Gửi bài giải
Điểm:
1,00
Giới hạn thời gian:
1.0s
Giới hạn bộ nhớ:
256M
Input:
stdin
Output:
stdout
Tác giả:
Nguồn bài:
Dạng bài
Ngôn ngữ cho phép
Python
Đề
Đề gốc: cho nhiệt độ nguyên ~t~ (độ C). In
Lanhnếu ~t < 15~;De chiunếu ~15 \le t \le 30~;Nongnếu ~t > 30~.
Một bạn đã viết chương trình dưới đây, nhưng nó sai với dữ liệu 35 và với dữ liệu 15:
t = int(input())
if t > 15:
print("De chiu")
elif t > 30:
print("Nong")
else:
print("Lanh")
Hãy tìm hai lỗi, sửa chương trình và nộp bản đã sửa. Bài nộp được chấm như một bài bình thường theo đề gốc ở trên.
Dữ liệu vào
Một dòng chứa số nguyên ~t~.
Kết quả
Một dòng: Lanh, De chiu hoặc Nong (giữa De và chiu có một dấu cách).
Ràng buộc
- ~-100 \le t \le 100~.
Ví dụ 1
Dữ liệu vào:
35
Kết quả:
Nong
Ví dụ 2
Dữ liệu vào:
15
Kết quả:
De chiu
Giải thích ví dụ
- Ví dụ 1: ~35 > 30~ nên đúng là
Nong. Chương trình lỗi xétt > 15trước, ~35 > 15~ đúng nên inDe chiuvà bỏ qua mọi nhánh sau — nhánht > 30không bao giờ được tới (lỗi thứ tự nhánh). - Ví dụ 2: ~15~ thuộc đoạn ~[15; 30]~ nên đúng là
De chiu. Chương trình lỗi dùngt > 15, ~15 > 15~ sai nên rơi xuốngelseinLanh(lỗi ranh giới).
Ghi chú
- Sửa xong, tự thử thêm các giá trị ranh giới ~14, 15, 30, 31~ (mục 3.1.3: kiểm thử phải đi qua mọi nhánh và mọi ranh giới). Bộ test của hệ thống có đủ các giá trị này.
Nguồn trong sách: Bài C3-13, mục 3.7, giáo trình Lập trình cơ sở với Python — TS. Nguyễn Quốc Long · Mức: (**)
Đang tải...