这个可以用方程组算出来的呀!用Java也只是用两个循环就可以解决的。

解决方案 »

  1.   

    这个问题的关键不在于JAVA,而是在于算法。
      

  2.   

    谢谢大家支持哦,我是想要一个完整的程序,不是因为我懒,我是真的写不出来,我刚接触JAVA。
      

  3.   

    公鸡x只,母鸡y只,小鸡z只,则有方程式:3x+5y+(z/3)=100,x+y+z=100
    公鸡最多33只,也就是x<=33;
    母鸡最多20只,也就是y<=33;
    小鸡最多100只,也就是z<=100;
    然后用一个循环,就ok了.
      

  4.   

    public class xxxxxx{
    public static void main(String[] args) 
    {
    for(int i=0;i<101;i++)
                         for(int j=0;j<101;j++)
                            for(int k=0;k<33;k++)
                            {
                               if((i+j+3*k==100)&&(3*i+5*j+k==100))
                               {
                                    System.out.println("公鸡"+i+"母鸡"+j+"小鸡"+3*k);
                                }
                             }
    }
    }
      

  5.   

    上面是最笨的方法,存为 xxxxxx.java 编译运行就好了。
      

  6.   

    不好意思,也不用什么算法。
    public class J{
        public static void main(String[] args){
            int i;
            int j;
            for (i = 0; i < 30; i++){
                for ( j = 0; j < 20; j++){
                    if (((100 - 3*i - 5*j) >= 0)){
                        System.out.print("|gong ji: " + i);
                        System.out.print("  |mu ji: " + j);
                        System.out.print("  |xiao ji: " + ((100 - 3*i - 5*j)*3));
                        System.out.println();
                    }
                }
            }    
        }
    }
    这个是源程序。
    -------------------------
    部分输出
    |gong ji: 0  |mu ji: 0  |xiao ji: 300
    |gong ji: 0  |mu ji: 1  |xiao ji: 285
    |gong ji: 0  |mu ji: 2  |xiao ji: 270
    |gong ji: 0  |mu ji: 3  |xiao ji: 255
    |gong ji: 0  |mu ji: 4  |xiao ji: 240
    |gong ji: 0  |mu ji: 5  |xiao ji: 225
    |gong ji: 0  |mu ji: 6  |xiao ji: 210
    |gong ji: 0  |mu ji: 7  |xiao ji: 195
    |gong ji: 0  |mu ji: 8  |xiao ji: 180
    |gong ji: 0  |mu ji: 9  |xiao ji: 165
    |gong ji: 0  |mu ji: 10  |xiao ji: 150
    |gong ji: 0  |mu ji: 11  |xiao ji: 135
    |gong ji: 0  |mu ji: 12  |xiao ji: 120
    |gong ji: 0  |mu ji: 13  |xiao ji: 105
    |gong ji: 0  |mu ji: 14  |xiao ji: 90
    |gong ji: 0  |mu ji: 15  |xiao ji: 75
    |gong ji: 0  |mu ji: 16  |xiao ji: 60
    |gong ji: 0  |mu ji: 17  |xiao ji: 45
    |gong ji: 0  |mu ji: 18  |xiao ji: 30
    |gong ji: 0  |mu ji: 19  |xiao ji: 15
    |gong ji: 1  |mu ji: 0  |xiao ji: 291
    |gong ji: 1  |mu ji: 1  |xiao ji: 276
    |gong ji: 1  |mu ji: 2  |xiao ji: 261
    |gong ji: 1  |mu ji: 3  |xiao ji: 246
    |gong ji: 1  |mu ji: 4  |xiao ji: 231
    |gong ji: 1  |mu ji: 5  |xiao ji: 216
    |gong ji: 1  |mu ji: 6  |xiao ji: 201
    |gong ji: 1  |mu ji: 7  |xiao ji: 186
    |gong ji: 1  |mu ji: 8  |xiao ji: 171
    |gong ji: 1  |mu ji: 9  |xiao ji: 156
    |gong ji: 1  |mu ji: 10  |xiao ji: 141
    |gong ji: 1  |mu ji: 11  |xiao ji: 126
    |gong ji: 1  |mu ji: 12  |xiao ji: 111
    |gong ji: 1  |mu ji: 13  |xiao ji: 96
    |gong ji: 1  |mu ji: 14  |xiao ji: 81
    |gong ji: 1  |mu ji: 15  |xiao ji: 66
    |gong ji: 1  |mu ji: 16  |xiao ji: 51
    |gong ji: 1  |mu ji: 17  |xiao ji: 36
    |gong ji: 1  |mu ji: 18  |xiao ji: 21
    |gong ji: 1  |mu ji: 19  |xiao ji: 6
    |gong ji: 2  |mu ji: 0  |xiao ji: 282
    |gong ji: 2  |mu ji: 1  |xiao ji: 267
    |gong ji: 2  |mu ji: 2  |xiao ji: 252
    |gong ji: 2  |mu ji: 3  |xiao ji: 237
    |gong ji: 2  |mu ji: 4  |xiao ji: 222
    |gong ji: 2  |mu ji: 5  |xiao ji: 207
    |gong ji: 2  |mu ji: 6  |xiao ji: 192
    |gong ji: 2  |mu ji: 7  |xiao ji: 177
    |gong ji: 2  |mu ji: 8  |xiao ji: 162
    |gong ji: 2  |mu ji: 9  |xiao ji: 147
    |gong ji: 2  |mu ji: 10  |xiao ji: 132
    |gong ji: 2  |mu ji: 11  |xiao ji: 117
    |gong ji: 2  |mu ji: 12  |xiao ji: 102
      

  7.   

    public class xxxxxx{
    public static void main(String[] args) 
    {
      for(int i=0;i<33;i++)
                   for(int j=0;j<20;j++)
                       for(int k=0;k<300;k++)
                          {
                            if((i+j+k/3==100)&&(3*i+5*j+k==100))
                              {
                                    System.out.println("公鸡"+i+"母鸡"+j+"小鸡"+3*k);
                                }
                           }
    }
    }
      

  8.   

    public class cock {
        public static void main(String[] args) {
            for(int i=0;i<=33;i++) {
                for(int j=0;j<=20;j++) {
                    for(int k=0;k<=100;k++) {
                        if((i+j+k==100) && ((3*i+5*j+(k/3))==100)) {
                            if(k%3==0) {
                                 System.out.println("gongji="+i+",muji="+j+",xiaoji="+k);
                            }
                        }
                    }
                }
            }
        }
    }
      

  9.   

    gongji=4,muji=12,xiaoji=84
    gongji=11,muji=8,xiaoji=81
    gongji=18,muji=4,xiaoji=78
    gongji=25,muji=0,xiaoji=75
      

  10.   

    public class Hundred{
    public static void main(String[] args){
    int cook, hen, chicken;

    for (int cook=0; cook<=100/3; cook++){ //
    int money=100;
    for(int hen=0; hen<=100/5; hen++){
    money-=(cook*3);
    for(int chicken=0;chicken<=100*3; chicken+=3){
    money-=(hen/5);
    if(money-chicken/3==0 && cook+hen+chicken==100){
    System.out.println(cook+", "+hen+", "+chicken);
    }
    }
    }
    }
    }


    }
      

  11.   

    上面的写错了
    发个新的public class Hundred{
    public static void main(String[] args){
    int cook, hen, chicken;

    for (cook=0; cook<=100/3; cook++){
    int money=100;
    for(hen=0; hen<=100/5; hen++){
    for(chicken=0;chicken<=100*3; chicken+=3){
    if(money-cook*3-hen*5-chicken/3==0 && cook+hen+chicken==100){
    System.out.println(cook+", "+hen+", "+chicken);
    }
    }
    }
    }
    }


    }
      

  12.   

    下面的程序可以判断其运行的耗时:(一秒不到)
    import java.util.Date;
    public class cock {
        public static void main(String[] args) {
            Date runStart = new Date();
            System.out.println("runstarttime:" + runStart);
            for(int i=0;i<=33;i++) {
                for(int j=0;j<=20;j++) {
                    for(int k=0;k<=100;k++) {
                        if((i+j+k==100) && ((3*i+5*j+(k/3))==100)) {
                            if(k%3==0) {
                                 System.out.println("gongji="+i+",muji="+j+",xiaoji="+k);
                            }
                        }
                    }
                }
            }
            Date runEnd = new Date();
            System.out.println("runendtime:" + runEnd);
        }
    }
      

  13.   

    这个问题主要是考你算法,你要明白计算这个问题的思路,和是不是用java编写没关系。
    李逍遥的输出不正确,都出现几百只鸡了
    if(money-cook*3-hen*5-chicken/3==0 && cook+hen+chicken==100)
    这句话判断问题的2个要求是否成立,一旦满足立刻打印输出。
      

  14.   

    public class xxxxxx{
    public static void main(String[] args) 
    {
    for(int i=0;i<101;i++)//穷举所有组合方法
                         for(int j=0;j<101;j++)
                            for(int k=0;k<33;k++)//k代表3只小鸡为一个单位
                            {
                               if((i+j+3*k==100)&&(3*i+5*j+k==100))
                               {
                                    System.out.println
    ("公鸡"+i+"母鸡"+j+"小鸡"+3*k);
                                }
                             }
    }
    }
    =============================
    结果4组
      

  15.   


    /**
     * <p>Title: </p>
     * <p>Description: </p>
     * <p>Copyright: Copyright (c) 2004</p>
     * <p>Company: </p>
     * @author ieqq
     * @version 1.0
     */public class baiji
    {
      public static void main(String[] args)
      {
        int cock, hen, chick;
        cock = 0;
        hen = 0;
        chick = 0;
        for (chick = 0; chick <= 33; chick++)
        {
    // 把三只小鸡看成一个东西来对待.
    // 这个问题最好不用除法, 因为那样会出现小数, 会出问题.
    // 下面这个方法还可以改的连乘法都不用,适合硬件实现.
          for (hen = 0; hen <= (100 - 3 * chick); hen++)
          {
            cock = 100 - 3 * chick - hen;
            if (3 * cock + 5 * hen + chick == 100)
            {
              System.out.println("公鸡" + cock +
                                 "只, 母鸡" + hen + "只, 小鸡" + 3 * chick +"只!");
            }      }
        }
      }
    }/////////////////////////////////////////////////////公鸡25只, 母鸡0只, 小鸡75只!公鸡18只, 母鸡4只, 小鸡78只!公鸡11只, 母鸡8只, 小鸡81只!公鸡4只, 母鸡12只, 小鸡84只!
      

  16.   

    我也写了一个,存为Chicken.java编译运行就可以了。public class Chicken{
    public static void main(String[] args){
    int m=1,f=1,y=3;//其中mfy分别表示公鸡母鸡和小鸡
    for(m=1;m*3<100;m++){
    for(f=1;f*5<100;f++){
    for(y=3;y<100;y+=3){
    if((m+f+y==100)&&(m*3+f*5+y/3==100)){
    System.out.println("Male: "+m+" Female: "+f+" Youny: "+y);
    }
    }
    }
    }
    }
    }最后结果如下:Male: 4 Female: 12 Youny: 84
    Male: 11 Female: 8 Youny: 81
    Male: 18 Female: 4 Youny: 78
      

  17.   

    to:
       MYLiao(夕阳武士) 把三个小鸡看成一个东西,不久可以了吗不用判断是不是3的倍数.
      

  18.   

    public class cock{
     public static void Main(String[] Args){
        for(int i=0;i<=100;i++){
              if(3i>100)continue;
              for(int j=0;j<=100;j++){
                 if(3*i+5*j>100)continue;
                 for(int k=0;k<=100;k++){
                   if(k%3==0){
                     if(3i+5*j+k/3==100)
                      System.out.println("cock="+i+"; hen="+j+"; chicken="+k);
                   }else{continue;}
                 }
              }     } }}