南宁市三甲医院有哪些:两个人用一个碗吃饭,三个人喝一碗汤,四个人吃一碗菜,一共有65个碗,请问有几多人

来源:百度文库 编辑:神马品牌网 时间:2024/03/28 20:40:48

要编程吗?
int fun1(int bowl) //bowl为碗数
{
int i;
for (i=0;i<=bowl;i++)
{
if ((i%2!=0)||(i%3!=0)||(i%4!=0)) continue;
/*其实对2和对4取余可以合并的*/
if ((i/2+i/3+i/4)==bowl) break;
}
return i;
}

然后在main中cout<<fun1(65)或者printf("%d",fun1(65));可输出答案60.

不是脑筋急转弯吧……
如果不是,认定每个人必须吃饭喝汤吃菜,65/(1/2+1/3+1/4)=60?
另外为这题编程没有什么意义……

这是一道简单的一元一次方程嘛.
设有x人, 则 x/2 + x/3 + x/4 = 65, 解得 x = 60.
验算一下: 60个人, 吃饭需30个碗, 喝汤需20个碗, 吃菜需15个碗, 刚好是65个.

三楼老兄用的什么程序

三楼用C++。。
我也凑个热闹(用Python):

step = 12
bowls = 65

for mans in range(0, 2*bowls, step):
if (mans/2+mans/3+mans/4)==bowls:
print "Find a answer:%d" % mans
else:
print "Find no answer!"

其实这类问题挺简单,但对初学数学的人来说,也挺有意思的。
我这里没有直接在找到答案后就break出来,是因为这类题有一类变种,就是"鸡兔同笼"问题。那就是不定方程的范围了。

不讲卫生!!