最近被二重循环卡住了。。特此求助大牛们。。我国古代数学家张丘建在《算经》中出了一道“百钱买百鸡”的问题,题意是这样的:5文钱可以买一直公鸡,3文钱可以买一只母鸡,1文钱可以买三只雏鸡,现在用100文钱买100只鸡,那么各有公鸡,母鸡,雏鸡多少只?请用二重循环实现。//希望写的时候给点注释,新人。。谢谢了。

解决方案 »

  1.   


    public class test {
    public static void main(String[] args) {
    // 公鸡,母鸡,雏鸡个数
    int x, y, z;
    // 5x + 3y + z/3 = 100; 钱
    // -- > 15x + 9y + z = 300; 钱
    // x + y + z = 100; 鸡
    // --> 14x + 8y = 200;
    for (x = 0; x < 200 / 14; x++) {
    for (y = 0; y < 200 / 8; y++) {
    if ((14 * x + 8 * y) == 200) {
    z = 100 - x - y;
    System.out.println(x + "," + y + "," + z);
    }
    }
    }
    }
    }4,18,78
    8,11,81
    12,4,84
      

  2.   


    public class test {
    public static void main(String[] args) {
    // 公鸡,母鸡,雏鸡个数
    int x, y, z;
    // 5x + 3y + z/3 = 100; 钱
    // -- > 15x + 9y + z = 300; 钱
    // x + y + z = 100; 鸡
    // --> 14x + 8y = 200;
    for (x = 0; x < 200 / 14; x++) {
    for (y = 0; y < 200 / 8; y++) {
    if ((14 * x + 8 * y) == 200) {
    z = 100 - x - y;
    System.out.println(x + "," + y + "," + z);
    }
    }
    }
    }
    }
      

  3.   

    x:公鸡 y:母鸡 z:雏鸡
    x+y+z = 100
    5x+3y+z/3=100
    x,y,z为整数
      

  4.   


    public class Test42 { public static void main(String[] args) {
    //x表示公鸡。y表示母鸡,100-x-y即为雏鸡
    for(int x=0; x<100/5; x++){
    for(int y=0; y<100/3; y++){
    if(((100-x-y)%3 == 0)&&((5*x+3*y + (100-x-y)/3) == 100)){
    System.out.println(x+ ", " + y + ", "+ (100-x-y));
    }
    }
    }
    }
    }