#include <Wire.h> 
  #include <LiquidCrystal_I2C.h> 
 
  LiquidCrystal_I2C lcd(0x27, 20, 4) ; 
 int sensorLow = 1023;
 int sensorHigh = 0;
  int sensorValue = 0;
  int sensorValue2 = 0; 
  int led_1=4, led_2=5,led_3=6; 
  void setup() 
  {
      lcd.begin(16,2); 
    lcd.backlight(); 
    pinMode(led_1,OUTPUT); 
    pinMode(led_2,OUTPUT); 
    pinMode(led_3,OUTPUT); 
    pinMode(13,OUTPUT);
    digitalWrite(13,LOW);
      while (millis() < 5000){
    sensorValue2 = analogRead(0);
    if (sensorValue2 > sensorHigh){
      sensorHigh = sensorValue2;
  }
}
  while (millis() < 5000){
    sensorValue2 = analogRead(0);
      if (sensorValue2 < sensorLow){
        sensorLow = sensorValue2;
  }
  }
  digitalWrite(13,HIGH);
  }
  void loop() 
  {
    sensorValue=analogRead(A0);
    sensorValue2=analogRead(A0); 
    sensorValue=map(sensorValue,0,1023,1,5); 
    lcd.clear();
    lcd.setCursor(0,0); 
    lcd.print("Temp is: "); 
    sensorValue2=map(sensorValue2, sensorLow, sensorHigh, -24, 80);
    lcd.print(sensorValue2); 
    delay(500); 
    if (sensorValue <= 2){ 
      digitalWrite(led_1,HIGH); 
      digitalWrite(led_2,LOW);  
      digitalWrite(led_3,LOW);  
   }
  else if (sensorValue==3){   
      digitalWrite(led_1,LOW);
      digitalWrite(led_2,HIGH); 
      digitalWrite(led_3,LOW);  
   }
    else if (sensorValue>=3){  
      digitalWrite(led_1,LOW); 
      digitalWrite(led_2,LOW); 
      digitalWrite(led_3,HIGH);
   }
  }