题目:
公鸡每只5元钱,母鸡每只3元钱,小鸡3只1元钱,用一百元钱买100只鸡,问公鸡。母鸡,小鸡各有多少只?有多少种可能?
C#程序实现如下:
for (int i = 1,j = 1,k;true;)
{
k = 100 - i - j;
if ((i*5 + j*3 + k/3) == 100)
{
Response.Write(i.ToString() + ",");
Response.Write(j.ToString() + ",");
Response.Write(k.ToString() + "<br>");
}
if (++j > 33 )
{
j = 1;
i++;
}
if (i > 20)
{
break;
}
}
输出结果:
3,20,77
4,18,78
7,13,80
8,11,81
11,6,83
12,4,84
如果要求后面的小鸡个数是整数的话,代码再加一个判断即可.
for (int i = 1,j = 1,k;true;)
{
k = 100 - i - j;
if ((i*5 + j*3 + k/3) == 100 && k%3 == 0)
{
Response.Write(i.ToString() + ",");
Response.Write(j.ToString() + ",");
Response.Write(k.ToString() + "<br>");
}
if (++j > 33 )
{
j = 1;
i++;
}
if (i > 20)
{
break;
}
}
输出结果:
4,18,78
8,11,81
12,4,84
还要再考虑允许购买0只的情况,代码修改如下:
for (int i = 0,j = 0,k;true;)
{
k = 100 - i - j;
if ((i*5 + j*3 + k/3) == 100 && k%3 == 0)
{
Response.Write(i.ToString() + ",");
Response.Write(j.ToString() + ",");
Response.Write(k.ToString() + "<br>");
}
if (++j > 33 )
{
j = 0;
i++;
}
if (i > 20)
{
break;
}
}
输出结果:
0,25,75
4,18,78
8,11,81
12,4,84
浙公网安备 33010602011771号