我试图解决解决此提示的程序挑战 “当从一篮子鸡蛋中一次取出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);
}
}
}
}
}
}
}
}
}
答案 0 :(得分: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;
}
答案 1 :(得分: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);
}