Que pasa??????

Saludos amigos, el siguiente programa me presenta un problema, lo diseñe para que cuando no tenga una entrada alta, por el pin 10 simplemente encienda el led L de la placa arduino leonardo que es en el pin 13, ahora me he puesto a revisarlo y creo q el código esta bueno que pasa? A y otra cosa, aun no teniendo las entradas conectadas me dice que están encendidas vean el código y entenderán a que me refiero:

void setup(){  
  
  Serial.begin(9600);
   
  pinMode(2,INPUT);
  pinMode(3,INPUT);
  pinMode(4,INPUT);
  pinMode(5,INPUT);
  pinMode(6,INPUT);
  pinMode(7,INPUT);
  pinMode(8,INPUT);
  pinMode(9,INPUT);
  pinMode(10,INPUT);
  pinMode(13,OUTPUT);
  
}

void loop(){
  
  if(digitalRead(10)==HIGH){
  
  if(digitalRead(2)==HIGH){
    Serial.println("paso1");
  }
  
  else {
    Serial.println("no paso 1");
  }
  
  delay(1000);
  
  if(digitalRead(3)==HIGH){
    Serial.println("paso2");
  }
  
  else {
    Serial.println("no paso 2");
  }
  
  delay(1000);
  
  if(digitalRead(4)==HIGH){
    Serial.println("paso3");
  }
  
  else {
    Serial.println("no paso 3");
  }
  
  delay(1000);
  
  if(digitalRead(5)==HIGH){
    Serial.println("paso4");
  }
  
  else {
    Serial.println("no paso 4");
  }
  
  delay(1000);
  
  if(digitalRead(6)==HIGH){
    Serial.println("paso5");
  }
  
  else {
    Serial.println("no paso 5");
  }
  
  delay(1000);
  
  if(digitalRead(7)==HIGH){
    Serial.println("paso6");
  }
  
  else {
    Serial.println("no paso 6");
  }
  
  delay(1000);
  
  if(digitalRead(8)==HIGH){
    Serial.println("paso7");
  }
  
  else {
    Serial.println("no paso 7");
  }
  
  delay(1000);
  
  if(digitalRead(9)==HIGH){
    Serial.println("paso8");
  }
  
  else {
    Serial.println("no paso 8");
  }
  
  delay(1000);
  
  if(digitalRead(9)==HIGH){
    Serial.println("paso8");
  }
  
  else {
    Serial.println("no paso 8");
  }
  
  delay(1000);
  
  }
  
  else {
    digitalWrite(13,HIGH);
  }
  
}

pasa que el pin puede estar recibiendo algo de estática y el micro detecta eso como un pico (HIGH), también puede estar en LOW sin control porque no esta atado a un estado lógico.

prueba esto: toca la pared y toca el pin numero 10 y veras que el led se mantiene encendido, quita la mano de la pared y el led se apagara, el pin esta siendo activado por la estática de tu cuerpo, incluso puede ser que apenas pasando la mano por encima logres activarlo.

para solucionar eso necesitas activar las resistencias pull up para mantener los pines en un estado lógico alto y cuando este baje intencional mente (presionando un botón), el código realice la tarea correctamente según la condición del if(digitalRead())