Panduan Lengkap Memahami While dan Do-While Loops di Dart

Thursday, 18 July 2024 3 read minutes

Cover Article
Photo by David Schultz

Dalam pemrograman, perulangan sangat penting untuk melakukan tugas yang berulang. Selain for loop, Dart menyediakan while dan do-while loop sebagai metode lain untuk melakukan perulangan. Artikel ini akan membahas secara lengkap tentang kedua jenis perulangan ini serta memberikan beberapa contoh yang mudah dipahami.

While Loop

While loop digunakan untuk melakukan perulangan selama kondisi tertentu terpenuhi. Tidak seperti for loop, while loop tidak bergantung pada variabel indeks tertentu. Ini membuatnya sangat cocok digunakan ketika jumlah perulangan tidak diketahui sebelumnya.

Struktur Dasar While Loop

Berikut adalah struktur dasar dari while loop :

void main() {
  var i = 1;

  while (i <= 100) {
    print(i);
    i++;
  }
}

Penjelasan

  1. Inisialisasi: var i = 1 – variabel i diinisialisasi dengan nilai 1.

  2. Kondisi: i <= 100 – selama kondisi ini terpenuhi, blok kode di dalam while akan dijalankan.

  3. Increment: i++ – nilai i akan bertambah 1 setelah setiap iterasi.

Pada contoh di atas, while loop akan mencetak angka dari 1 hingga 100.

Do-While Loop

Do-while loop adalah bentuk lain dari while loop. Perbedaannya terletak pada evaluasi kondisi: do-while loop akan mengevaluasi kondisi setelah blok kode dijalankan, sehingga blok kode tersebut akan selalu dijalankan setidaknya sekali.

Struktur Dasar Do-While Loop

Berikut adalah contoh do-while loop yang mencetak angka dari 1 hingga 100:

void main() {
  var i = 1;

  do {
    print(i);
    i++;
  } while (i <= 100);
}

Penjelasan

  1. Inisialisasi: var i = 1 – variabel i diinisialisasi dengan nilai 1.

  2. Blok Kode: print(i); i++; – blok kode ini dijalankan sebelum kondisi dievaluasi.

  3. Kondisi: i <= 100 – selama kondisi ini terpenuhi, perulangan akan terus berjalan.

Pada contoh di atas, blok kode di dalam do-while akan selalu dijalankan setidaknya sekali, terlepas dari apakah kondisi awal terpenuhi atau tidak.

Infinite Loops

Infinite loop adalah kondisi di mana perulangan berjalan tanpa henti, menyebabkan aplikasi dan komputer mungkin mengalami crash. Kondisi ini biasanya terjadi ketika kondisi perulangan selalu bernilai true dan tidak ada mekanisme untuk keluar dari perulangan tersebut.

Contoh Infinite Loop

Berikut adalah contoh di mana infinite loop dapat terjadi:

void main() {
  var i = 1;

  while (i < 5) {
    print(i);
  }
}

Penjelasan

Pada kode di atas, variabel i selalu bernilai 1. Karena kondisi i < 5 selalu true, perulangan tidak akan pernah berhenti, menyebabkan aplikasi mengalami infinite loop dan akhirnya crash.

Challenge

Sebagai latihan, cobalah membuat program Dart yang menampilkan output berikut menggunakan while atau do-while loop:

**********
*********
********
*******
******
*****
****
***
**
*

Solusi Menggunakan While Loop

void main() {
  var i = 10;

  while (i > 0) {
    var row = '';
    var j = i;
    while (j > 0) {
      row += '*';
      j--;
    }
    print(row);
    i--;
  }
}

Solusi Menggunakan Do-While Loop

void main() {
  var i = 10;

  do {
    var row = '';
    var j = i;
    do {
      row += '*';
      j--;
    } while (j > 0);
    print(row);
    i--;
  } while (i > 0);
}

Memahami while dan do-while loop sangat penting untuk meningkatkan keterampilan pemrograman kita. Kedua jenis perulangan ini memberikan fleksibilitas dalam mengelola tugas berulang, terutama ketika jumlah perulangan tidak diketahui sebelumnya. Hindari infinite loop dengan memastikan kondisi perulangan akan berubah dan berhenti pada suatu titik.

section icon
section title icon recents articles
Latest Articles just for you

Stay updated with the latest articles crafted to enhance your knowledge.
Discover new insights and stay ahead with our recent content.

Card image cap
Panduan Lengkap Menggunakan json_serializable dan json_annotation untuk Model yang Rapi di Flutter
Tuesday, 29 October 2024

Dalam pengembangan aplikasi Flutter, sering kali kita perlu mengonversi data dari JSON ke objek Dart atau sebaliknya. Ini terutama umum dalam aplikasi yang mengambil data dari API atau menyimpan data secara lokal dalam format JSON. Untuk mempermudah ...

Read more
Card image cap
Pengenalan Widget dan Lifecycle dalam Flutter
Thursday, 17 October 2024

Widget adalah komponen dasar yang digunakan dalam Flutter untuk membangun antarmuka pengguna (UI). Hampir semua elemen visual di aplikasi Flutter merupakan widget, mulai dari teks, tombol, hingga tata letak seperti baris dan kolom. Dalam pengembangan...

Read more
Card image cap
Panduan Pemula untuk Membuat Aplikasi Pertama dengan Flutter
Saturday, 12 October 2024

Setelah menyiapkan Flutter SDK di sistem kamu, penting untuk memahami bagaimana struktur proyek Flutter diatur dan bagaimana cara menjalankan aplikasi kamu di berbagai lingkungan pengembangan. Pada artikel kali ini kita akan menjelaskan secara mendal...

Read more
Card image cap
Panduan Membuat Program Dart Pertama untuk Semua Platform
Saturday, 12 October 2024

Pada artikel kali ini kamu akan memberikan panduan langkah demi langkah untuk menjalankan program Dart pertama kamu di berbagai platform (Windows, macOS, dan Linux). Tujuan utama dari panduan ini adalah untuk mempermudah kamu yang baru banget belajar...

Read more