马克思手稿中有一道趣味数学问题:有30个人,其中有男人、女人和小孩,在一家饭馆吃饭花了50先令;每个男人花3先令,每个女人花2先令,每个小孩花1先令;问男人、女人和小孩各有几人?
设x,y,z分别代表男人、女人和小孩。按题目的要求,可得到下面的方程:
x+y+z=30 (1)
3x+2y+z=50 (2)
用方程程序求此不定方程的非负整数解,可先通过(2)-(1)式得:
2x+y=20 (3)
由(3)式可知,x变化范围是0~10
public class Main{
public static void main(String[] args){
int x,y,z;
for(x=0;x<=10;x++){
y=20-2*x;
z=30-x-y;
if(3*x+2*y+z==50){
System.out.println("男人数目为:"+x+"女人数目为:"+y+"小孩数目为:"+z);
}
}
}
}
Saturday, May 9, 2009
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment