Để có số liệu đánh giá về các hộ nghèo của một địa phương
Để 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.
Giải sách bài tập Tin học 10 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.
Lời giả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.