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

Gỡ lỗi chương trình đếm ngày mưa to của trạm khí tượng

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

Trạm khí tượng cần một chương trình đếm số ngày mưa to (lượng mưa > 50mm) trong n ngày ghi nhận được. Một bạn học sinh đã viết chương trình sau nhưng khi kiểm thử với bộ dữ liệu chỉ có n = 1 ngày thì chương trình luôn báo kết quả là 0, dù ngày đó mưa rất to:

n = int(input())
data_str = input().split()
data = []
for i in range(n):
    data.append(int(data_str[i]))
count = 0
for i in range(n - 1):
    if data[i] > 50:
        count = count + 1
print(count)

Hãy dùng kĩ thuật kiểm thử với bộ dữ liệu vùng biên (ví dụ n = 1) và in giá trị trung gian đã học để phát hiện lỗi, sau đó viết lại chương trình cho đúng.

Định dạng vào: dòng 1 là số nguyên n (số ngày, n ≥ 1); dòng 2 gồm n số nguyên là lượng mưa (mm) mỗi ngày, cách nhau bởi khoảng trắng.

Định dạng ra: in ra một số nguyên duy nhất là số ngày có lượng mưa lớn hơn 50mm.

InputOutputGiải thích
7
10 20 60 55 40 51 65
4Các ngày có lượng mưa > 50 là 60, 55, 51, 65
1
60
1Chỉ có 1 ngày, ngày đó mưa to nên chương trình đúng phải đếm được ngày này
5
10 20 30 40 50
0Không có ngày nào vượt quá 50 (50 không được tính là > 50)
#gỡ lỗi#off-by-one#vòng lặp for#bộ test biên#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