Viết chương trình giải bài toán cổ điển sau: Vừa gà vừa chó Bó lại cho tròn Ba mươi sáu con 100 chân chẵn Hỏi có bao nhiêu gà, bao nhiêu chó?
Code Python
def giai_bai_toan_ga_cho(so_con, tong_chan):
for ga in range(so_con + 1):
cho = so_con - ga
if 2 * ga + 4 * cho == tong_chan:
return ga, cho
return None, None
while True:
ga = int(input("Nhập số gà: "))
cho = int(input("Nhập số chó: "))
if ga < 0 or cho < 0:
print("Số lượng phải là số nguyên không âm. Nhập lại.")
continue
so_con = ga + cho
tong_chan = 2 * ga + 4 * cho
if so_con != 36 or tong_chan != 100:
print("Không thỏa mãn: phải có đúng 36 con và đúng 100 chân. Nhập lại.")
continue
break
ket_qua_ga, ket_qua_cho = giai_bai_toan_ga_cho(so_con, tong_chan)
if ket_qua_ga is not None:
print(f"Với tổng {so_con} con và {tong_chan} chân, nghiệm thu được: gà={ket_qua_ga}, chó={ket_qua_cho}")
if ket_qua_ga == ga and ket_qua_cho == cho:
print("Kết quả khớp với nhập vào.")
else:
print("Kết quả khác với nhập vào.")
else:
print("Không có nghiệm tích hợp với điều kiện bài toán.")