#include <DHT.h>;

#define DHTPIN 7
#define DHTTYPE DHT22
DHT dht(DHTPIN, DHTTYPE);

int ledPin = 13;
int ldrPin = A0;
int LED_1 = 12;
const int trigPin = 9;
const int echoPin = 10;
long duration;
int distance;

int array[3] = {1, 2, 3};
int arraySize = sizeof(array) / sizeof(array[0]); // Calculate the size of the array

void setup() {
  pinMode(ledPin, OUTPUT);
  pinMode(ldrPin, INPUT);
  pinMode(trigPin, OUTPUT);
  pinMode(echoPin, INPUT);
  pinMode(LED_1, OUTPUT);

  Serial.begin(9600);
  dht.begin();
}

void loop() {
  for (int i = 0; i < arraySize; i++) { // Iterate through the array from 0 to 2
    Serial.println(array[i]);
    if (array[i] == 1) {
      int ldrStatus = analogRead(ldrPin);
      Serial.println(ldrStatus);
      if (ldrStatus <= 300) {
        digitalWrite(ledPin, HIGH);
        digitalWrite(LED_1, LOW);
      } else {
        digitalWrite(ledPin, LOW); // Ensure the LED is turned off if the condition is not met
      }delay(3000);

    } else if (array[i] == 2) {
      digitalWrite(ledPin, LOW);

      duration = pulseIn(echoPin, HIGH);
      distance = duration * 0.034 / 2;
      Serial.print("Distance :");
      Serial.println(distance);
      Serial.println("cm");
      if (distance < 20) {
        digitalWrite(LED_1, HIGH);
      } else {
        digitalWrite(LED_1, LOW); // Ensure the LED is turned off if the condition is not met
      }
      delay(3000);
    } else if (array[i] == 3) {
      digitalWrite(ledPin, HIGH);
      digitalWrite(LED_1, HIGH);
      delay(3000);
    }
  }
}