Yêu cầu: Hãy giải bài toán cổ: " Vừa gà vừa chó bó lại cho tròn, 36 con, 100 chân chẵn."
Ý tưởng bài giải:
Kết quả |
Để giải bài toán này
ta gọi ga là số gà và cho là số chó. Theo điều kiện bài toán ta thấy
ga có thể đi
từ 0 (không có con nào) và đến tối đa là 50 (vì chỉ có 100 chân), tương tự
cho có
thể đi từ 0 đến 25. Như vậy ta có thể cho
ga chạy từ 0 đến 50 và với mỗi giá trị
cụ thể của
ga lại cho
cho chạy từ 0 đến 25, lần lượt với mỗi cặp (
ga ,
cho ) cụ thể đó
ta kiểm tra 2 điều kiện:
ga +
cho == 36 ? (số con) và 2
ga + 4
cho == 100 ? (số chân).
Nếu cả 2 điều kiện đều thoả thì cặp (
ga ,
cho ) cụ thể đó chính là nghiệm cần tìm.
Từ đó ta có chương trình với 2 vòng for lồng nhau, một vòng for cho
ga và một
vòng cho
cho .
Code:
-----------------------------------------------------------------------------
#include<iostream.h>
using namespace std;
void main()
{
int ga,cho;
for (ga=0;ga<=50;ga++)
for (cho=0;cho<=25;cho++)
if ((ga+cho==36) && (ga*2+cho*4)==100)
cout<<"Ga= "<<ga<<"\nCho= "<<cho<<"\n";
}
-----------------------------------------------------------------------------
Sign up here with your email
3 nhận xét
Write nhận xéthay
ReplyHay quá
ReplyCâu lệnh while thì viết sao ạ ?
ReplyConversionConversion EmoticonEmoticon