Môn Tin họcQuản lý học tập Tin học

So sánh hai cách viết hàm đếm vận động viên vượt chuẩn thời gian marathon

Lớp 10Lập trìnhpythonGiải quyết vấn đề với máy tínhVận dụng cao

Thang điểm 10 · 5 test case chấm tự động · 3 tiêu chí chấm

Giải chạy Run for Future ghi độ lệch thời gian hoàn thành (đơn vị: giây) của từng vận động viên so với thời gian mục tiêu. Số dương nghĩa là về đích chậm hơn mục tiêu, số 0 nghĩa là về đích đúng mục tiêu, số âm nghĩa là về đích sớm hơn mục tiêu.

Ban tổ chức cần hàm dem_vuot(A, tuychon): nếu tuychon = 0 thì trả lại số lượng tất cả vận động viên; nếu tuychon khác 0 thì chỉ đếm số vận động viên có độ lệch dương thực sự (chậm hơn mục tiêu), không tính vận động viên về đích đúng giờ (độ lệch bằng 0).

Hai bạn học sinh viết phần điều kiện khác nhau trong thân hàm:

  • Cách 1: if x > 0: dem = dem + 1
  • Cách 2: if x >= 0: dem = dem + 1

Em hãy cho biết cách nào đúng theo đặc tả trên, giải thích ngắn tại sao hai cách có thể cho kết quả khác nhau khi danh sách có giá trị 0, rồi viết chương trình hoàn chỉnh (đúng) để chạy với dữ liệu vào/ra dưới đây.

Định dạng dữ liệu: Dòng 1 là các số nguyên (độ lệch, giây) cách nhau bởi dấu cách; dòng 2 là số nguyên tuychon. In ra một số nguyên là số lượng vận động viên theo yêu cầu.

InputOutputGiải thích
100 0 -50 200 0
0
5tuychon = 0 nên đếm tất cả 5 vận động viên
100 0 -50 200 0
1
2Chỉ đếm 100 và 200 (độ lệch dương thực sự), không tính hai vận động viên có độ lệch 0
#tham số#hàm có điều kiện#so sánh thuật toán#biên if#category:tu_duy_phan_bien#difficulty:analyzing

Giáo viên giao bài này cho lớp, học sinh nộp bài trực tuyến và được chấm tự động.

Giáo viên đăng nhập để giao bài