const uint8_t countInputPins = 4;
const uint8_t inputPinsArray[countInputPins] {2,3,4,5};
const uint8_t outputPin = 6;
void setup() {
for (uint8_t i = 0; i < countInputPins; i ++)
pinMode(inputPinsArray[i], INPUT_PULLUP);
pinMode(outputPin, OUTPUT);
}
void loop() {
static uint8_t value = 0;
static uint8_t oldValue = 0;
for (uint8_t i = 0; i < countInputPins; i ++)
bitWrite(value, i, digitalRead(inputPinsArray[i]));
if (value != oldValue) {
switch (value) {
case 5:
digitalWrite(outputPin, LOW);
break;
case 10:
digitalWrite(outputPin, HIGH);
break;
}
oldValue = value;
}
delay(10);
}