Arduino cant give power to an LED

I would try clearing results.value after you use them, so they are not holding the same value during the next pass thru loop. And add some { }s

  if(results.value ==2){
    digitalWrite(ledPin,HIGH);
results.value = 0;
}
    else{
    digitalWrite(ledPin,LOW);
}

  if(results.value ==1){
    digitalWrite(fan,HIGH);
    delay(500);
    digitalWrite(fan,LOW);
results.value = 0;
  }
results.value = 0; // bad result received
} // end loop