以下代码是我“安全”程序的一部分。我必须进行4次“猜测”(密码由4个数字组成)。对于每个猜测我使用一些if语句,但我想知道是否有办法为每个“猜测”制作一个方法。这种方式而不是if语句的这4个部分,我只有一个方法。
if (turn == 1) {
if ((buttonState != lastButtonState) && buttonState == 1) {
guess1 = newValue;
turn = 2;
Printer();
}
lastButtonState = buttonState;
}
if (turn == 2) {
if ((buttonState != lastButtonState) && buttonState == 1) {
guess2 = newValue;
turn = 3;
Printer();
}
lastButtonState = buttonState;
}
if (turn == 3) {
if ((buttonState != lastButtonState) && buttonState == 1) {
guess3 = newValue;
turn = 4;
Printer();
}
lastButtonState = buttonState;
}
if (turn == 4) {
if ((buttonState != lastButtonState) && buttonState == 1) {
gok4 = nieuwewaarde;
beurt = 5;
Printer();
}
lastButtonState = buttonState;
}
答案 0 :(得分:0)
理论上应该可以将它缩小到这样的东西。请注意,您应该使用数组而不是一系列guess1,guess2,...变量。
int guess[4];
if ((buttonState != lastButtonState) && buttonState == 1) {
guess[turn-1] = newValue;
if (turn == 4)
{
gok4 = nieuwewaarde;
beurt = 5;
}
else
turn = turn+1;
Printer();
}
lastButtonState = buttonState;
如果从0开始计数,你可以调整+ 1 / -1。但是如果想要更广泛地了解你想要实现什么,可能还有其他方法可以写东西。
此外,Arduino代码不是C ++,而是AVR。 “用户”代码是Processing。