Lập trình giải bài toán dân gian TRĂM TRÂU TRĂM CỎ

20.10. Lập trình giải bài toán dân gian TRĂM TRÂU TRĂM CỎ:

"Trâu đứng ăn năm

Trâu nằm ăn ba

Lụ khụ trâu già

Ba con một bó

Trăm con ăn cỏ

Trăm bó no nê.

Hỏi có bao nhiêu trâu đứng, trâu nằm, trâu già?".

Bài Làm:

Bài toán có thể phát biểu lại như sau: Có một trăm con trâu ăn hết một trăm bó cỏ. Mỗi con trâu đứng ăn được 5 bó. Mỗi con trâu nằm ăn được 3 bó. Ba con trâu già ăn cùng nhau hết 1 bó. Hỏi có bao nhiêu con trâu đứng, bao nhiêu con trâu nằm và bao nhiêu con trâu già?

Mỗi trâu đứng ăn 5 bó cỏ nên tối đa số trâu đứng chỉ có thể là 100/5 tức là 20 con.

Mỗi trâu nằm ăn 3 bó cỏ nên số trâu nằm nhỏ hơn hoặc bằng 100/3 tức là 33 con.

Số trâu già = 100 - số trâu đứng - số trâu nằm.

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

#Trăm trâu, trăm cỏ

for i in range(1, 21) :

     for j in range(1, 34) :

          k= 100 - i - j

          if 5*i + 3j + k/3 == 100 :

          print( "Trâu đứng ",i," trâu nằm ",j," trâu già ",k)