我换了很多种方法
不管是嵌入FOR循环 还是 if语句
都要报错。
无法使用random 来实现百钱百鸡呢?高手麻烦写个来看看

解决方案 »

  1.   

    /*百钱买百鸡
    *公鸡五钱一只;母鸡三钱一只;小鸡一钱三只;
    *
    *现有一百钱,问可以买多少只公鸡,母鸡.小鸡?
    */
    public class Baiqian
    {
        public static void main(String [] args)
        {
            int x=0,z=0;
            int y;
            for(int i=0;i<20;i++){
             x=i;
               for(int j=3;j<100;j+=3){
                z=j;
                y=100-x-z;
                if(5*x+3*y+z/3==100&&y>0&&x>0){
                System.out.print(x+"\t"+y+"\t"+z+"\t");
                System.out.println();
              }
                }
        }
    }
    }
    这是我最初写的代码。
    直接给你贴出来了。
      

  2.   

    public class Chicken {
    private static int chicken1 = 15;
    private static int chicken2 = 9;
    private static int chicken3 = 1;
    private static int total = 300; /**
     * @param args
     */
    public static void main(String[] args) {
    for (int i = 0; i <= 20; i ++ ){
    for (int j = 0; j <= 34; j ++ ){
    for (int k = 0; k <= 300; k += 3){
    if( i*chicken1 +j*chicken2+k*chicken3 == total){
    System.out.println("(" + i + "," + j + "," + k + ")");
    }
    }
    }
    }
    }}输出结果:
    (0,0,300)
    (0,1,291)
    (0,2,282)
    (0,3,273)
    (0,4,264)
    (0,5,255)
    (0,6,246)
    (0,7,237)
    (0,8,228)
    (0,9,219)
    (0,10,210)
    (0,11,201)
    (0,12,192)
    (0,13,183)
    (0,14,174)
    (0,15,165)
    (0,16,156)
    (0,17,147)
    (0,18,138)
    (0,19,129)
    (0,20,120)
    (0,21,111)
    (0,22,102)
    (0,23,93)
    (0,24,84)
    (0,25,75)
    (0,26,66)
    (0,27,57)
    (0,28,48)
    (0,29,39)
    (0,30,30)
    (0,31,21)
    (0,32,12)
    (0,33,3)
    (1,0,285)
    (1,1,276)
    (1,2,267)
    (1,3,258)
    (1,4,249)
    (1,5,240)
    (1,6,231)
    (1,7,222)
    (1,8,213)
    (1,9,204)
    (1,10,195)
    (1,11,186)
    (1,12,177)
    (1,13,168)
    (1,14,159)
    (1,15,150)
    (1,16,141)
    (1,17,132)
    (1,18,123)
    (1,19,114)
    (1,20,105)
    (1,21,96)
    (1,22,87)
    (1,23,78)
    (1,24,69)
    (1,25,60)
    (1,26,51)
    (1,27,42)
    (1,28,33)
    (1,29,24)
    (1,30,15)
    (1,31,6)
    (2,0,270)
    (2,1,261)
    (2,2,252)
    (2,3,243)
    (2,4,234)
    (2,5,225)
    (2,6,216)
    (2,7,207)
    (2,8,198)
    (2,9,189)
    (2,10,180)
    (2,11,171)
    (2,12,162)
    (2,13,153)
    (2,14,144)
    (2,15,135)
    (2,16,126)
    (2,17,117)
    (2,18,108)
    (2,19,99)
    (2,20,90)
    (2,21,81)
    (2,22,72)
    (2,23,63)
    (2,24,54)
    (2,25,45)
    (2,26,36)
    (2,27,27)
    (2,28,18)
    (2,29,9)
    (2,30,0)
    (3,0,255)
    (3,1,246)
    (3,2,237)
    (3,3,228)
    (3,4,219)
    (3,5,210)
    (3,6,201)
    (3,7,192)
    (3,8,183)
    (3,9,174)
    (3,10,165)
    (3,11,156)
    (3,12,147)
    (3,13,138)
    (3,14,129)
    (3,15,120)
    (3,16,111)
    (3,17,102)
    (3,18,93)
    (3,19,84)
    (3,20,75)
    (3,21,66)
    (3,22,57)
    (3,23,48)
    (3,24,39)
    (3,25,30)
    (3,26,21)
    (3,27,12)
    (3,28,3)
    (4,0,240)
    (4,1,231)
    (4,2,222)
    (4,3,213)
    (4,4,204)
    (4,5,195)
    (4,6,186)
    (4,7,177)
    (4,8,168)
    (4,9,159)
    (4,10,150)
    (4,11,141)
    (4,12,132)
    (4,13,123)
    (4,14,114)
    (4,15,105)
    (4,16,96)
    (4,17,87)
    (4,18,78)
    (4,19,69)
    (4,20,60)
    (4,21,51)
    (4,22,42)
    (4,23,33)
    (4,24,24)
    (4,25,15)
    (4,26,6)
    (5,0,225)
    (5,1,216)
    (5,2,207)
    (5,3,198)
    (5,4,189)
    (5,5,180)
    (5,6,171)
    (5,7,162)
    (5,8,153)
    (5,9,144)
    (5,10,135)
    (5,11,126)
    (5,12,117)
    (5,13,108)
    (5,14,99)
    (5,15,90)
    (5,16,81)
    (5,17,72)
    (5,18,63)
    (5,19,54)
    (5,20,45)
    (5,21,36)
    (5,22,27)
    (5,23,18)
    (5,24,9)
    (5,25,0)
    (6,0,210)
    (6,1,201)
    (6,2,192)
    (6,3,183)
    (6,4,174)
    (6,5,165)
    (6,6,156)
    (6,7,147)
    (6,8,138)
    (6,9,129)
    (6,10,120)
    (6,11,111)
    (6,12,102)
    (6,13,93)
    (6,14,84)
    (6,15,75)
    (6,16,66)
    (6,17,57)
    (6,18,48)
    (6,19,39)
    (6,20,30)
    (6,21,21)
    (6,22,12)
    (6,23,3)
    (7,0,195)
    (7,1,186)
    (7,2,177)
    (7,3,168)
    (7,4,159)
    (7,5,150)
    (7,6,141)
    (7,7,132)
    (7,8,123)
    (7,9,114)
    (7,10,105)
    (7,11,96)
    (7,12,87)
    (7,13,78)
    (7,14,69)
    (7,15,60)
    (7,16,51)
    (7,17,42)
    (7,18,33)
    (7,19,24)
    (7,20,15)
    (7,21,6)
    (8,0,180)
    (8,1,171)
    (8,2,162)
    (8,3,153)
    (8,4,144)
    (8,5,135)
    (8,6,126)
    (8,7,117)
    (8,8,108)
    (8,9,99)
    (8,10,90)
    (8,11,81)
    (8,12,72)
    (8,13,63)
    (8,14,54)
    (8,15,45)
    (8,16,36)
    (8,17,27)
    (8,18,18)
    (8,19,9)
    (8,20,0)
    (9,0,165)
    (9,1,156)
    (9,2,147)
    (9,3,138)
    (9,4,129)
    (9,5,120)
    (9,6,111)
    (9,7,102)
    (9,8,93)
    (9,9,84)
    (9,10,75)
    (9,11,66)
    (9,12,57)
    (9,13,48)
    (9,14,39)
    (9,15,30)
    (9,16,21)
    (9,17,12)
    (9,18,3)
    (10,0,150)
    (10,1,141)
    (10,2,132)
    (10,3,123)
    (10,4,114)
    (10,5,105)
    (10,6,96)
    (10,7,87)
    (10,8,78)
    (10,9,69)
    (10,10,60)
    (10,11,51)
    (10,12,42)
    (10,13,33)
    (10,14,24)
    (10,15,15)
    (10,16,6)
    (11,0,135)
    (11,1,126)
    (11,2,117)
    (11,3,108)
    (11,4,99)
    (11,5,90)
    (11,6,81)
    (11,7,72)
    (11,8,63)
    (11,9,54)
    (11,10,45)
    (11,11,36)
    (11,12,27)
    (11,13,18)
    (11,14,9)
    (11,15,0)
    (12,0,120)
    (12,1,111)
    (12,2,102)
    (12,3,93)
    (12,4,84)
    (12,5,75)
    (12,6,66)
    (12,7,57)
    (12,8,48)
    (12,9,39)
    (12,10,30)
    (12,11,21)
    (12,12,12)
    (12,13,3)
    (13,0,105)
    (13,1,96)
    (13,2,87)
    (13,3,78)
    (13,4,69)
    (13,5,60)
    (13,6,51)
    (13,7,42)
    (13,8,33)
    (13,9,24)
    (13,10,15)
    (13,11,6)
    (14,0,90)
    (14,1,81)
    (14,2,72)
    (14,3,63)
    (14,4,54)
    (14,5,45)
    (14,6,36)
    (14,7,27)
    (14,8,18)
    (14,9,9)
    (14,10,0)
    (15,0,75)
    (15,1,66)
    (15,2,57)
    (15,3,48)
    (15,4,39)
    (15,5,30)
    (15,6,21)
    (15,7,12)
    (15,8,3)
    (16,0,60)
    (16,1,51)
    (16,2,42)
    (16,3,33)
    (16,4,24)
    (16,5,15)
    (16,6,6)
    (17,0,45)
    (17,1,36)
    (17,2,27)
    (17,3,18)
    (17,4,9)
    (17,5,0)
    (18,0,30)
    (18,1,21)
    (18,2,12)
    (18,3,3)
    (19,0,15)
    (19,1,6)
    (20,0,0)
      

  3.   

    hehe,楼上解决的是“百钱买鸡”问题,不是“百钱百鸡”问题  ;)
      

  4.   

    你把其中的三个数之和=100的取出来不就是的了~~~if( i*chicken1 +j*chicken2+k*chicken3 == total && i+j+k == 100){
      System.out.println("(" + i + "," + j + "," + k + ")");
    }(0,25,75)
    (4,18,78)
    (8,11,81)
    (12,4,84)^_^
      

  5.   

    > 你把其中的三个数之和=100的取出来不就是的了~~~不错,hehe你这种是“后验”的方法。如果从算法优化的角度考虑,充分利用题目中的约束条件,用“先验”的方法,就可以减少一些运算次数了。
      

  6.   

    晕 我的意思诸位都没明白啊。。我想的是 用Math.random()进行生成随机数,将随机数转换成int类型,再用其算出百钱百鸡的方法。
      

  7.   

    我搞着玩的,主要是一时兴趣。
    但发现random在一些取值方面用不起。
    看看有没有解决方法。
    public class baiqianbaiji2 {
    public static void main(String[] arg) {
    int  total = 100 ,
          gongji=5,
          muji=3,
          gj=0;
      
     
    for(int mj=0;mj<=100;mj++) {
    gj=(int)Math.random();
    if( (total-mj*muji-gj*gongji)*3== total-mj-gongji  ) {


    }
    System.out.println(gj+";"+mj+";"+(total-mj-gongji));
      } 
      }
    }