int tombol = 2; // Deklarasi variabel tombol pada pin 2
int led_hijau = 3; // Deklarasi variabel led_hijau pada pin 3
int led_kuning = 4; // Deklarasi variabel led_kuning pada pin 4
int led_merah = 5; // Deklarasi variabel led_merah pada pin 5
int jumlahTekanan = 0; // Deklarasi variabel untuk menghitung jumlah tekanan yang diberikan ke tombol

void setup() {
  // Inisialisasi pin sebagai input atau output
  pinMode(tombol, INPUT); // Inisialisasi pin pada variabel tombol sebagai input
  pinMode(led_hijau, OUTPUT); // Inisialisasi pin pada variabel led_hijau sebagai output
  pinMode(led_kuning, OUTPUT); // Inisialisasi pin pada variabel led_kuning sebagai output
  pinMode(led_merah, OUTPUT); // Inisialisasi pin pada variabel led_merah sebagai output
}

void loop() {
  // Membaca sinyal digital yang dikirim oleh tombol ke pin dan dimasukkan ke dalam variabel statusTombol
  int statusTombol = digitalRead(tombol);

  // Skrip untuk menyalakan LED berurutan
  if (statusTombol == HIGH) {
    jumlahTekanan++; // Menambahkan nilai +1 ke dalam variabel jumlahTekanan untuk menghitung berapa kali tekanan diberikan
    delay(200); // Delay agar tidak terjadi pembacaan tekanan dua kali

    if (jumlahTekanan == 1) {
      digitalWrite(led_hijau, HIGH);
    } else if (jumlahTekanan == 2) {
      digitalWrite(led_kuning, HIGH);
    } else if (jumlahTekanan == 3) {
      digitalWrite(led_merah, HIGH);
    } else if (jumlahTekanan == 4) {
      digitalWrite(led_hijau, LOW);
      digitalWrite(led_kuning, LOW);
      digitalWrite(led_merah, LOW);
      jumlahTekanan = 0; // Reset jumlahTekanan ke 0
    }
  }
}