PERULANGAN
PERULANGAN DO-WHILE
statement-do-while
Sama dengan pengulangan-while
statement didalam pengulangan
do-while akan dieksekusi
beberapa kali selama kondisinya
sesuai dengan ekspressi yang
BENTUK UMUM
do
{
pernyataan1;
pernyataan2;
...
pernyataan_N;
}
KETERANGAN
Bagian pernyataan1 hingga pernyataanN
dijalankan secara berulang sampai ungkapan
bernilai salah.
Pengujian ungkapan dilakukan setelah
bagian pernyataan, maka pada pernyataan
do ... while
minimal akan dijalankan sekali,
karena begitu masuk ke blok perulangan,
PERULANGAN DO-WHILE
Loop continuation-condition
Berupa boolean expression
Kondisi true yang menyebabkan
perulangan dieksekusi
Ditandai di dalam tanda kurung (…)
Diawali dengan
do
dan diakhir dengan
while
(
…
)
semicolon (;)
Diperlukan block { … } jika statement lebih
WHILE VS DO WHILE
while:
Pengecekan kondisi dilakukan
di-awal perulangan (
pre-test loop
)
do-while:
Pengecekan kondisi dilakukan
CONTOH
int x = 0;
do {
System.out.println(x);
x++;
CONTOH
//pengulangan tanpa batas
do{
CONTOH
//satu kali pengulangan
// statement dieksekusi satu kali
do
System.out.println(“hello”);
CONTOH
Sebagai contoh, kita akan mengulang kasus pertama untuk
pernyataan while. Cetaklah bilangan 1 sampai dengan 5
Langkah Algoritmanya :
1. definisikan variabel bil
2. tentukan nilai awal = 1
3. lakukan pengulangan
4. cetak bil
5. nilai perhitungan bertambah satu
6. lakukan proses jika bil <= 5
PROGRAM
1. import java.util.Scanner; 2. public class UlangDo 3. {
4. public static void main(String args[]) 5. {
6. Scanner masuk = new Scanner(System.in); 7. int bil;
8. bil=1; 9. do {
10. System.out.println(bil); 11. bil++;
12. }while (bil<=5); 13. }
KETERANGAN PROGRAM
KETERANGAN
Langkah pertama
Nilai bil = 1, baris 9 – 11 dikerjakan. Baris 10
akan menampilkan isi variabel bil dan baris
11 akan menaikkan nilai bil menjadi 2.
Kemudian, baris 12 membandingkan bil
dengan 5, karena bil masih <= 5, maka bisa
kita tuliskan while (true)
KETERANGAN
Langkah kedua
Nilai bil = 2, baris 9 – 11 dikerjakan. Baris 10
akan menampilkan isi variabel bil dan baris
11 akan menaikkan nilai bil menjadi 3.
Kemudian, baris 12 membandingkan bil
dengan 5, karena bil masih <= 5, maka bisa
kita tuliskan while (true)
KETERANGAN
Langkah ketiga
Nilai bil = 3, baris 9 – 11 dikerjakan. Baris 10
akan menampilkan isi variabel bil dan baris
11 akan menaikkan nilai bil menjadi 4.
Kemudian, baris 12 membandingkan bil
dengan 5, karena bil masih <= 5, maka bisa
kita tuliskan while (true)
KETERANGAN
Langkah keempat
Nilai bil = 4, baris 9 – 11 dikerjakan. Baris 10
akan menampilkan isi variabel bil dan baris
11 akan menaikkan nilai bil menjadi 5.
Kemudian, baris 12 membandingkan bil
dengan 5, karena bil masih <= 5, maka bisa
kita tuliskan while (true)
KETERANGAN
Langkah kelima
Nilai bil = 5, baris 9 – 11 dikerjakan. Baris 10
akan menampilkan isi variabel bil dan baris
11 akan menaikkan nilai bil menjadi 6.
Kemudian, baris 12 membandingkan bil
dengan 5, dan nilai bil sudah > 5, maka bisa
kita tuliskan while (false)
CONTOH
Cetaklah bilangan 5 sampai dengan 1
Langkah Algoritmanya :
definisikan variabel bil tentukan nilai awal = 5 lakukan pengulangan cetak bil
nilai perhitungan berkurang satu jika i > 0
PROGRAM
1. import java.util.Scanner; 2. public class UlangDo1 3. {
4. public static void main(String args[])
5. {
6. Scanner masuk = new Scanner(System.in); 7. int bil;
8. bil=5; 9. do {
10. System.out.println(bil); 11. bil--;
12. }while (bil>=1); 13. }
CONTOH
Cetaklah bilangan ganjil dari 0 sampai dengan 10
Langkah Algoritmanya :
definisikan varibel bilangan tentukan nilai awal = 1
cetak bilangan
lakukan proses pengulangan
nilai perhitungan bertambah dua lakukan proses selama bil<=10
PROGRAM
1. import java.util.Scanner; 2. public class UlangDo2 3. {
4. public static void main(String args[])
5. {
6. Scanner masuk = new Scanner(System.in); 7. int bil;
8. bil=1;
9. while (bil<=10) {
10. System.out.println(bil); 11. bil+=2;
CONTOH
Cetaklah bilangan genap dari 0 sampai dengan 10
Langkah Algoritmanya :
definisikan varibel bilangan tentukan nilai awal = 0
cetak bilangan
lakukan proses pengulangan
nilai perhitungan bertambah dua lakukan proses selama bil<=10
PROGRAM
1. import java.util.Scanner; 2. public class UlangDo3 3. {
4. public static void main(String args[]) 5. {
6. Scanner masuk = new Scanner(System.in); 7. int bil;
8. bil=2;
9. do{
10. System.out.println(bil); 11. bil+=2;
12. }while (bil<=10); 13. }
CONTOH
Contoh kasus lain adalah sebagai berikut. Cetaklah
konversi suhu dari celcius ke fahreinhet mulai dari 1 sampai 10 dengan membuat tabel.
Langkah Algoritmanya :
definisikan varibel celcius dan fahreinhet tentukan nilai awal = 1
masukan rumus konversi f=1.8 * c + 32; cetak fahrenheit
lakukan proses pengulangan
PROGRAM
1. public class UlangDo4 2. {
3. public static void main(String args[]) 4. {
5. int c; 6. double f;
7. System.out.println("---"); 8. System.out.println(" CELCIUS FAHREINHEIT"); 9. System.out.println("---"); 10. c=1;
11. do {
12. f=1.8 * c + 32;
13. System.out.println("Celcius : "+c+" Fahreinhet : "+f); 14. c++;
15. } while (c<=10);
16. System.out.println("---"); 17. }
CONTOH
Hitunglah rata-rata
bilangan positif, dimana
banyaknya data
ALGORITMA
Langkah algoritmanya :
definisikan varibel i untuk counter,
definisikan variabel n untuk banyaknya data definisikan varibel x untuk memasukan data
definisikan variabel jum untuk menghitung jumlah definisikan variabel rata untuk mengitung rata-rata Masukan banyak data yang akan dihitung
ALGORITMA
lakukan proses pengulangan
nilai perhitungan i sebagai counter
bertambah satu
masukan bil yang akan dihitung
hitung jumlahnya
lakukan proses pengulangan selama i<n
hitung rata-ratanya
PROGRAM
import java.util.Scanner; public class UlangDo6 {
public static void main(String args[]) {
Scanner masuk = new Scanner(System.in); int i=1;
float n, jum, x, rata;
System.out.print("Banyaknya data : "); n = masuk.nextFloat();
PROGRAM
do{
System.out.print("Data ke-"+i+" : "); x=masuk.nextFloat();
jum += x; i++;
}while (i<=n); rata = jum / n;
System.out.println("Rata-rata : "+rata); System.out.println("Jumlah : "+jum); }
OUTPUT
Banyaknya data : 3 Data ke-1 : 3
KESALAHAN YANG SERING TERJADI
. Kesalahan pemrograman secara umum terjadi, ketika lupa menulis semi-colon setelah ekspresi while
pada saat menggunakan pengulangan do-while
do{ ...
}while(boolean_ekspresi) //SALAH->lupa semicolon;