// Definir los pines para los LEDs
#define ledPin1 9 
#define ledPin2 8 

// Definir los pines para los botones
#define buttonPin1 10 
#define buttonPin2 7 
#define buttonPin3 5 

void setup() {
  // Inicializar los pines de los LEDs como salidas
  pinMode(ledPin1, OUTPUT);
  pinMode(ledPin2, OUTPUT);
  
  // Inicializar los pines de los botones como entradas
  pinMode(buttonPin1, INPUT);
  pinMode(buttonPin2, INPUT);
  pinMode(buttonPin3, INPUT);
}

void loop() {
  // Leer el estado actual de los botones
  int button1 = digitalRead(buttonPin1);
  int button2 = digitalRead(buttonPin2);
  int button3 = digitalRead(buttonPin3);
  
  // Si el botón 1 es presionado, alternar el estado del LED 1
  if (button1 == HIGH) {
    digitalWrite(ledPin1, HIGH);
    delay(100); // Pequeño retardo para evitar rebotes
  }
  else{
    digitalWrite(ledPin1, LOW);
    delay(100);
  }
  
  if (button2 == HIGH) {
    digitalWrite(ledPin2, HIGH);
    delay(100); // Pequeño retardo para evitar rebotes
  }
  else{
    digitalWrite(ledPin2, LOW);
    delay(100);
  }
  // Si el botón 3 es presionado, alternar el estado de ambos LEDs
  if (button3 == HIGH) {
    int ledState1 = digitalRead(ledPin1);
    int ledState2 = digitalRead(ledPin2);
    digitalWrite(ledPin1, !ledState1);
    digitalWrite(ledPin2, !ledState2);
    delay(100); // Pequeño retardo para evitar rebotes
  }
}