如何让循环再次做同样的事情?
问题描述:
基本上,当我的计数器达到13时,我希望底部的if和else语句再次发生。我该怎么做?我的代码如下。如何让循环再次做同样的事情?
int counter = 2;
int start = 19;
int end = 95;
while(!(input>=start && input<=end) /*range*/ && counter<100){
start+=95;
end+=95;
if(counter % 4 == 0)
end+=19;
else if(counter % 5 == 0)
start+=19;
counter++;
}
编辑: 对不起不够明确。呃,我想要做的是,如果if-else语句已经执行了13次,我想整个事情,包括
start+=95;
end+=95;
再次执行。
答
将循环中的代码包装到方法中。当每13次执行一次时,再次调用该方法
答
int innerLoop=(counter==13)?2:1;
for (int i=0; i<innerLoop; i++) {
...
}
+0
我不太明白这个D: – alicedimarco
+1
好。无论如何,我的代码中有一个错误,因为你的计数器从2:P开始。这显然是某种课堂任务......所以,你在努力学习什么?循环和条件?我的建议是在你的while循环中创建一个循环,只有当你的循环执行了13次时才执行两次循环。 – phatfingers
使用goto并简单检查if(counter == 13)转到标签 –
您的问题并不十分清楚。你再次发生什么意思?如果你的计数器达到13,他们会运行,但是你的循环只会运行一次,因为你增加了95个单位到开始和结束变量。在你的while循环中开始。 –
你的问题没有任何意义。如果计数器是13,那么这些分支都不会执行。 '13%4 = 1'和'13%5 = 3',执行它们两次只会做任何事情两次。 – Polynomial