Dart - 4. Looping


Looping


update 07/04/2020, source code di github.

Sering sekali dalam membuat program, kita perlu mengulang beberapa baris kode, misalnya: menampilkan bilangan ganjil dari 1 s/d 10, kita bisa melakukannya dengan cara sebagai berikut:

print("1);
print("3);
print("5);
print("7);
print("9);


Tetapi bagaiman jika yang akan kita tampilkan dari 1 s/d 100 atau 1 s/d 1000 bahkan sampai ratusan ribu, maka perintah tersebut akan kita tulis terus menerus, tentu hal ini tidaklah efektif dan bukan kode yang baik, dari pada kita terus menulis ulang perintah tersebut, maka baiklah kita gunakan perulangan (loop), perhatikan potongan kode berikut:

for(int i=0; i<10; i++) {
  print(i);
}

Potongan kode tersebut akan menghasilkan tampilan dilayar dari 1 s/d 9, untuk menggunakan loop kita gunakan dengan keyword for, kemudian kita harus menentukan nilai awal loop (int i=0;), kemudian nilai akhir loop ( i<10), yang terakhir adalah counter dari loop (i++), dengan demikian loop yang kita buat akan dimulai dari 0 sampai dengan 9, ini dikarenkan pada saat kita membuat nilai akhir, kita menggunakan suatu kondisi dimana i<10, artinya selama nilai i < 10 maka cetaklah nilai i (print(i);)

berikut adalah contoh untuk mencetak bilangan ganjjil dari 1 s/d 10:

void main() {

  // set loop dari 1 s/d 10
  // karena yang mau kita cek adalah dari 1 s/d 10,
  // maka set i=1 dan kondisi i <= 10
  for(int i=1; i<=10; i++) {

     // cek apakah i merupakan bilangan ganjil
     // jika ya maka cetaklah i
     if(i % 2 == 1) {
       print(i);
     }
  }
}


While / Do..While

Dart juga menyediakan dua buah keyword loop selain for yaitu while dan do..while, while kita gunakan apabila kita tidak tahu jumlah loop yang akan terjadi "meskipun contoh mencetak bilangan ganjil dari 1 s/d 10 dapat juga kita buat menggunakan while", hanya saja while sering digunakan untuk proses loop yang tidak diketahui jumlah loopnya, misalnya mengambil data dari sebuah tabel dalam database, kita tidak tahu berapa banyak jumlah record pada tabel, sehingga paling tepat kita gunakan adalah keyword while, kira-kira logikanya begini selagi akhir dari record belum ketemu, maka ambil record.
while NOT Table.EOF
   Get Record

Maka program akan terus menerus melakukan perulangan sampai akhir dari record ditemukan, perhatikan contoh berikut, dimana selama tombol esc belum ditekan maka program akan mencetak "hello world".

import 'dart:io';

void main() {
  print("input karakter : ");
  while(stdin.readLineSync().codeUnitAt(0) != 27) {
    print("Hello, world");
  }
}



27 adalah nilai integer dari karakter ESC, contoh berikutnya adalah dalam bentuk do while

import 'dart:io';

void main() {
  print("input karakter : ");
  do{
    print("Hello, world");
  } while(stdin.readLineSync().codeUnitAt(0) != 27);
}


Perbedaan while dengan do..while adalah, pada while, kondisi akan lebih dahulu dicek, jika kondisi bernilai benar maka block while akan dikerjakan, sementara dalam do..while, block do akan eksekusi sekali terlebih dahulu barulah di cek kondisinya.

Dart - 4. Looping Dart - 4. Looping Reviewed by jc on October 16, 2018 Rating: 5

No comments:

Powered by Blogger.