Pernyataan perulangan do while di program Java

Perulangan do-while adalah variasi dari perulangan while. Adapun sintaksis penulisan perulangan do-while adalah sebagai berikut:

do {
   // loop body
   pernyataan;
} while (ekspresiboolean);
pernyataan berikutnya;

Di perulangan while, program mengevaluasi ekspresiboolean di permulaan sebelum mengeksekusi pernyataan atau blok pernyataan. Jika hasil evaluasi ekspresiboolean bernilai boolean false, maka pernyataan atau blok pernyatan tidak dieksekusi.

Untuk perulangan do-while, proses mengevaluasi ekspresiboolean dilakukan setelah terlebih dahulu mengeksekusi pernyataan atau blok pernyataan. Di perulangan do-while, pernyataan atau blok pernyataan dieksekusi minimal satu kali. Ketika perulangan do-while berakhir, eksekusi program menuju ke pernyataan berikutnya setelah klausa while.

Baca artikel:

Penggunaan braces di perulangan do-while sebenarnya tidak begitu diperlukan. Namun demikian, sebagian besar programer Java tetap menyertakan braces ini untuk menghindari kebingungan antara perulangan while dan do-while yang mempunyai hanya satu pernyataan untuk dieksekusi. Sebagai contoh, baris pertama perulangan while adalah sebagai berikut:

while (ekspresiboolean)

sedangkan perulangan do-while tanpa braces dengan pernyataan tunggal akan nampak sebagai berikut:

do
   pernyataan;
while (ekspresiboolean);

Kedua bentuk pernyataan perulangan di atas bisa membingungkan yang mungkin menjadi salah menginterpretasikan baris terakhir yaitu while (ekspresiboolean) sebagai perulangan while yang berisi pernyataan kosong. Untuk menghindari kebingungan ini dan agar jelas antara perulangan while dan do-while di dalam program, perulangan do-while yang hanya mempunyai satu pernyataan tetap ditulis menggunakan braces.

do {
   pernyataan;
} while (ekspresiboolean);

Bagan alir perulangan do-while berikut ini dapat menjelaskan bahwa ekspresiboolean tidak dievaluasi sebelum pernyataan atau blok pernyataan dieksekusi minimal sekali. Hal ini karena proses evaluasi perulangan do-while berada di bawah pernyataan atau blok pernyataan yang dieksekusi.

Bagan alir perulangan do-while di Java

Berikut ini adalah contoh program menghitung nilai rata-rata dengan cara menjumlahkan nilai yang diinput dan membagi jumlah tersebut dengan banyaknya nilai yang diinput. Program sedikit berbeda karena menggunakan sentinel value 0 sebagai tanda akhir proses input nilai dan keluar dari perulangan do-while. Sentinel value adalah nilai input khusus yang menandakan akhir proses input.

// Nama file : NilaiRata22.java
// Menampilkan nilai rata-rata siswa

// mengimpor Java predifined class
import javax.swing.JOptionPane;
import java.text.DecimalFormat;

// Deklarasi kelas NilaiRata22
public class NilaiRata22 {
   
   public static void main(String[] args) {
      
      int data;
      int perulangan = 0, jumlah = 0;
      double rata2;
  
      // Input data sampai nilai input 0
      do {
         
         // input data selanjutnya  
         String strData = JOptionPane.showInputDialog(null,
            "Masukkan nilai siswa (integer)" +
            "\nInput program berakhir jika nilai input 0", "Nilai Siswa",
            JOptionPane.QUESTION_MESSAGE);

         data = Integer.parseInt(strData);
         jumlah += data;
         if (data != 0)
            perulangan += 1;
      } while (data != 0);

      // Membuat obyek dari kelas DecimalFormat
      DecimalFormat duaAngka = new DecimalFormat("0.00");

      rata2 = (double) jumlah / perulangan;

      // Menampilkan hasil
      JOptionPane.showMessageDialog(null, "Jumlah nilai dinput : " + perulangan +
         "\nTotal nilai diinput : " + jumlah + "\nNilai rata-rata : " +
         duaAngka.format(rata2), "Nilai Rata-rata", JOptionPane.INFORMATION_MESSAGE);

      // Mengakhiri program GUI
      System.exit(0);
   }
}
Menggunakan perulangan do-while di Java
SUKAI DAN BAGIKAN ARTIKEL INI:
Pin It