const int input1 = 32;
const int input2 = 33;
const int outputNOT = 2;
const int outputAND = 4;
const int outputOR = 5;
const int outputNAND = 18;
const int outputNOR = 19;
const int outputXOR = 21;
const int outputXNOR = 22;
void setup() {
pinMode(input1, INPUT);
pinMode(input2, INPUT);
pinMode(outputNOT, OUTPUT);
pinMode(outputAND, OUTPUT);
pinMode(outputOR, OUTPUT);
pinMode(outputNAND, OUTPUT);
pinMode(outputNOR, OUTPUT);
pinMode(outputXOR, OUTPUT);
pinMode(outputXNOR, OUTPUT);
}
void loop() {
int val1 = digitalRead(input1);
int val2 = digitalRead(input2);
// Compuerta NOT
digitalWrite(outputNOT, !val1);
// Compuerta AND
digitalWrite(outputAND, val1 && val2);
// Compuerta OR
digitalWrite(outputOR, val1 || val2);
// Compuerta NAND
digitalWrite(outputNAND, !(val1 && val2));
// Compuerta NOR
digitalWrite(outputNOR, !(val1 || val2));
// Compuerta XOR
digitalWrite(outputXOR, val1 ^ val2);
// Compuerta XNOR
digitalWrite(outputXNOR, !(val1 ^ val2));
delay(100);
}