Membuat Keputusan
Pada bahasa C Arduino, salah satu bagian penting adalah membuat keputusan. Keputusan dibuat melalui statemen if, else, for, dan lain-lain. Tapi sebelum ke tiap statemen terlebih dahulu diperkenalkan operator biner, artinya operator ini hanya memerlukan dua operand. Berikut disajikan dalam tabel operator relasional dimana operator ini termasuk dalam operator biner.
Tabel 1. Operator biner
Statement If
Sintaks untuk statement if adalah sebagai berikut:
if (ekspresi1) { //memulai blok statemen if //mengesekusi blok statement ini hanya jika ekspresi1 benar } //akhir dari blok statemen if
Statemen if terdiri dari kata kunci “if” dan diikuti oleh buka lalu tutup kurung. Di dalam dua kurung tersebut terdapat sebuah ekspresi yang melakukan kalkulasi untuk mengecek apakah benar atau salah suatu keadaan. Kemudian diikuti oleh buka kurung kurawal “{“, tanda ini menunjukkan bahwa blok statemen dimulai, kemudian diikuti oleh satu atau lebih statemen program. Semua statemen yang ada di dalam dua kurung kurawal tersebut disebut sebagai blok statemen if, yang dieksekusi/running jika pengujian if adalah benar. Blok statemen diakhiri oleh tutup kurung kurawal “}”. Supaya lebih jelas kita buat program menyalakan LED menggunakan statement if, buatlah kode di bawah ini pada IDE Arduino:
//Blog: pauzan.com //Youtube: Muhammad Pauzan #define LED1 4 //mendefinisikan pin 4 sebagai LED1 #define LED2 5 #define LED3 6 #define LED4 7 void setup() { //setting LED1-LED4 sebagai output pinMode (LED1, OUTPUT); pinMode (LED2, OUTPUT); pinMode (LED3, OUTPUT); pinMode (LED4, OUTPUT); } void loop() { int a = 11; //variabel a bertipe data int dengan nilai 11 if(a > 10){ digitalWrite(LED1, LOW); //LED1 kondisi mati digitalWrite(LED3, LOW); delay(500);// LED1 dan LED3 mati selama 500ms atau 0,5 detik digitalWrite(LED2, HIGH); //LED2 nyala digitalWrite(LED4, HIGH); delay(500); // LED2 dan LED4 nyala selama 500ms atau 0,5 detik digitalWrite(LED2, LOW); digitalWrite(LED4, LOW); delay(500); }if(a <= 10){ digitalWrite(LED1, LOW); digitalWrite(LED2, LOW); digitalWrite(LED3, LOW); digitalWrite(LED4, LOW); delay(500); } }
Karena nilai a memenuhi if yang pertama yaitu a > 10 maka blok di dalam if tersebut yang dijalankan, outputnya dapat dilihat pada gambar berikut ini:
Gambar 1. Animasi program statement if pada Arduino
PREVIOUS: Tipe Data C Arduino
NEXT: Statement If-Else