百元买百鸡问题
public class ChichenNum
{int i,j,k//i公鸡数量,j母鸡数量,k小鸡数量,公鸡5元1只,母鸡3元一只,小鸡一元3只
void cnum()
{int i,j,k;
  for(i=0;j<100;i++)
    for(j=0;j<100;j++)
       for(k=0;k<100;k++)
        if(5*i+3*j+k/3==100)
         { returnthis.i=i;
          returnthis.j=j;
          returnthis.k=k;}
}
public staic void main(String[] args)
{ChichenNum cn=new ChichenNum();
println("公鸡数量:"+cn.i)
 println("公鸡数量:"+cn.j)
 println("公鸡数量:"+cn.k)
}
}
哪里错了?谢谢了(跳过代码优化)

解决方案 »

  1.   

    public class ChichenNum {    int i, j, k;//i公鸡数量,j母鸡数量,k小鸡数量,公鸡5元1只,母鸡3元一只,小鸡一元3只    void cnum() {        for (i = 0; j < 100; i++) {
                for (j = 0; j < 100; j++) {
                    for (k = 0; k < 100; k++) {
                        if (5 * i + 3 * j + k / 3 == 100) {
                            return;
                        }
                    }
                }
            }
        }    public static void main(String[] args) {
            ChichenNum cn = new ChichenNum();
            cn.cnum();
            System.out.println("公鸡数量:" + cn.i);
            System.out.println("母鸡数量:" + cn.j);
            System.out.println("小鸡数量:" + cn.k);
        }
    }以最小的修改改了一个 而且你 staic  都写错了.......static 
      

  2.   

    public class ChichenNum
    {
        int i,j,k; //i公鸡数量,j母鸡数量,k小鸡数量,公鸡5元1只,母鸡3元一只,小鸡一元3只
        ChichenNum()
    {
      for(int i=0;i<20;i++) //最多只可能买20只,减少循环次数
      for(int j=0;j<34;j++)
      for(int k=0;k<100;k++)
     
      { if(5*i+3*j+k/3==100&&i+j+k==100)
          System.out.println("公鸡数量:"+i+" 母鸡数量:"+j+" 小鸡数量:"+k); 结果可能有种
      }
      
    }
    public static void main(String[] args)
    {
    new ChichenNum();
       
    }
    }
     
      

  3.   

    谢谢各位了,但是这样自己定义个方法和直接在main()中处理,有什么区别呢?
      

  4.   


     区别就是代码好看多了,而且可以达到复用,假如你有另外一个函数也要调用该函数,总不能去调用main函数吧,main函数当且只有一个!是程序的入口~