0

我试图解决一个程序挑战,解决这个提示“当从一篮鸡蛋中一次取出 2、3、4、5、6 个鸡蛋时,剩余数量分别为 1、2、3、4,5 个鸡蛋. 当一次取出 7 个鸡蛋时,没有鸡蛋剩下。我可以在篮子里放的最少鸡蛋数量是多少?

我尝试使用嵌套循环制作一个程序,我觉得它应该可以工作,但是当我运行该程序时,它只是打印空白。我从来没有得到一个数字来满足这个方程。有人可以帮助我,或者告诉我我做错了什么吗?

我只被允许使用嵌套循环和决策语句。

public class Program{ 

public static void main (String []args){

  int c,d,e,f,g,h;

for (int j=1; j<1000; j++){

    for (c=j; c>=1; c=c-2){
    }


        if (c==1){
            for (d=j; d>=2; d=d-3){
            }

        if (d==2){
            for (e=j; e>=3; e=e-4){
            }  
        if (e==3){
            for (f=j; f>=4; f=f-5){
            }
        if (f==4){
            for (g=j; g>=5; g=g-6){
            }
        if (g==5){
            for (h=j; g>=0; h=h-7){
            }
        if (h==0){
            System.out.println(+j);   
        }
        }
        }
        }
        }
        }
} 
}
}
4

2 回答 2

1
int numberOfEggs = 0;
for (;;)
{
    if (numberOfEggs % 2 == 1 &&
        numberOfEggs % 3 == 2 &&
        numberOfEggs % 4 == 3 &&
        numberOfEggs % 5 == 4 &&
        numberOfEggs % 6 == 5   )
        return numberOfEggs;
    else
        numberOfEggs += 7;
}
于 2013-11-01T17:26:19.807 回答
1

尝试这个:

public static void main(String[] args) {
    int x = 7;
    int result = -1;
    while (true) {
        if ((x % 2 == 1) && (x % 3 == 2) && (x % 4 == 3) && (x % 5 == 4)
                && (x % 6 == 5)) {
            result = x;
            break;
        }
        x += 7; // This because you know its multiple of 7
    }
    System.out.println("Result is: " + result);
}
于 2013-11-01T17:27:52.440 回答