Để có số liệu đánh giá về các hộ nghèo của một địa phương, người ta đã tiến hành một khảo sát xã hội học

Trả lời Câu 21.11 trang 45 SBT Tin học 10 sách Kết nối tri thức hay nhất, chi tiết sẽ giúp học sinh dễ dàng làm bài tập Tin học 10.

1 214 lượt xem


Giải SBT Tin học 10 Kết nối tri thức Bài 21: Câu lệnh lặp While

Câu 21.11 trang 45 SBT Tin học 10: Để có số liệu đánh giá về các hộ nghèo của một địa phương, người ta đã tiến hành một khảo sát xã hội học. Em hãy viết chương trình để hỗ trợ cho nhóm tổ chức khảo sát: Xác định mức thu nhập bình quân của tất cả các hộ gia đình được khảo sát (số hộ được khảo sát là một số lớn hơn 0); Xác định số các hộ gia đình có thu nhập dưới 20 triệu cùng thu nhập bình quân của các hộ đó. Yêu cầu: Số liệu về thu nhập của các hộ gia đình được lần lượt nhập vào từ bàn phím cho tới khi nào nhập vào số 0.

Trả lời:

Chương trình có thể viết như sau:

so_ho_gd = 0

So_ho_ngheo = 0

so_ho_khagia = 0

tongthunhap_ngheo = 0

tongthunhap = 0

thunhap = 1                #Có thể gán 1 số bất kì > 0 để thực hiện vòng lặp

while thunhap > 0 :

thunhap = float(input("Thu nhập của hệ tiếp theo (đơn vị tính triệu đồng): "))

if thunhap > 0: #Xem lưu ý ở dưới.

tongthunhap = tongthunhap + thunhap

so_ho_gd = so_ho_gd + 1

if thunhap < 20:

tongthunhap_ngheo = tongthunhap_ngheo + thunhap

so_ho_ngheo = so_ho_ngheo + 1

print("Số các hộ gia đình được khảo sát = ", so_ho_gd, "Thu nhập bình quân 1 hộ = ", tongthunhap/so_ho_gd)

if so_ho_ngheo > 0:

print("Số các hộ gia đình nghèo được khảo sát = ", so_ho_ngheo, "Thu nhập bình quân 1 hộ = ", tongthunhap_ngheo/so_ho_ngheo)

else:

print("Không có các hộ gia đình nghèo")

Lưu ý: Cần có câu lệnh kiểm tra để tránh trường hợp giá trị nhập vào cho biến thunhap ≤ 0 (dấu hiệu kết thúc nhập dữ liệu) nhưng vẫn tính thêm một hộ gia đình được khảo sát.

1 214 lượt xem


Xem thêm các chương trình khác: