Jumat, 02 Mei 2014

Looping While, Do While, dan For


Mahasiswa UTM berbagi    pengetahuan


Pengetahuan algoritma dan struktur data mengenai : 
1. Perulangan dengan WHILE
2. Perulangan dengan Do WHILE
3. Perulangan dengan FOR

1. Perulangan dengan WHILE
Yang pertama adalah perulangan dengan WHILE. Pada struktur WHILE, aksi (atau runtunan aksi) akan dilaksanakan berulang kali selama kondisi bernilai true. Jika kondisi bernilai false, badan pengulangan tidak akan dilaksanakan, yang berarti pengulangan selesai. Yang harus diperhatikan adalah pengulangan harus berhenti. Pengulangan yang tidak pernah berhenti menandakan bahwa logika pemrograman tersebut salah. Pengulangan berhenti apabila kondisi bernilai false. Agar kondisi suatu saat bernilai false, maka di dalam badan pengulangan harus ada instruksi yang mengubah nilai variabel kondisi.

TEORI SINGKAT
Pernyataan ini berguna untuk memproses suatu pernyataan atau beberapa pernyataan beberapa kali. Selama ungkapan bernilai benar, pernyataan akan selalu dikerjakan.
Bentuknya :
while (ungkapan)
             Pernyataan;
Keterangan :
·         bagian pernyataan akan diekseskusi selama ungkapan dalam while bernilai benar.
·         Pengujian terhadap ungkapan pada while dilakukan sebelum bagian pernyataan.
·         Kemungkinan pernyataan pada while tidak dijalankan sama sekali, jika ketemu kondisi yang pertama kali bernilai salah.
Catatan :
Pernyataan perulangan dengan while akan selalu dikerjakan jika ungkapan selalu benar. Oleh karena itu, kita harus membuat kondisi suatu saat ungkapan bernilai salah agar perulangan berakhir.

CONTOH :
import java.util.Scanner;
 public class UlangWhile1
 {
  public static void main(String args[])
  {
   Scanner masuk = new Scanner(System.in);
   int bil;
   bil=1;
   while (bil<=5) {
    System.out.println(bil);
    bil++;
   }
  }
}
Hasil Output
1
2
3
4
5
Press any key to continue . . .
Di sini juga ada latihan yang bisa di coba untuk mengetahui lebih lanjut tentang perulangan WHILE :
  •  Dengan while, buatlah program untuk mencetak bilangan genap dari 0 sampai dengan 10.
import java.util.Scanner;
 public class UlangWhile3
 {
  public static void main(String args[])
  {
   Scanner masuk = new Scanner(System.in);
   int bil;
   bil=2;
   while (bil<=10) {
     System.out.println(bil);
     bil+=2;
      }
  }
 }
Hasil Output :
2
4
6
8
10
Press any key to continue . . .
  •   Ubah program di atas untuk menampilkan bilangan ganjil saja yaitu 1, 3,5, 7, 9

import java.util.Scanner;
 public class UlangWhile3
 {
  public static void main(String args[])
  {
   Scanner masuk = new Scanner(System.in);
   int bil;
   bil=1;
   while (bil<=10) {
     System.out.println(bil);
     bil+=2;
      }
  }
 }
Hasil Output :
1
3
5
7
9
BUILD SUCCESSFUL (total time: 1 second)

  •   Hitunglah rata-rata bilangan positif, dimana banyaknya data ditentukan dari data yang dimasukan dengan keyboard, hasil outputyang diinginkan sbb:
Banyaknya data : 4
Data ke-1 : 3
Data ke-2 : 5
Data ke-3 : 2
Data ke-4 : 6
Rata-rata : 4.0
Jumlah : 16.0

Sanner masuk=new Scanner(System.in);
int i=1;
float n, jum = 0, x = 0, rata;
System.out.println("Banyak data : ");
n = masuk.nextFloat();
while (i<=n) {
    System.out.println("data ke- "+i);
x=masuk.nextFloat();
jum += x;
i++;
}
        System.out.println("Jumlah ="+jum);
        System.out.println("Rata-rata ="+(jum/n)); 
    }
}
Hasil Output :
Banyak data : 4
Data ke-1 : 3
Data ke-2 : 4
Data ke-3 : 3
Data ke-4 : 2
Jumlah = 12.0
Rata-rata = 3.0
BUILD SUCCESSFUL (total time: 3 second)
2. Perulangan dengan Do WHILE

Yang kedua adalah perulangan dengan Do WHILE. Sama halnya dengan while, statment do-while digunakan untuk mengeksekusi sebuah blok secara berulang sampai tidak memenuhi kondisi tertentu. Pada penggunaan while, kondisi diperiksa pada saat awal, jadi ada kemungkinan blok aksi dalam while tidak pernah dieksekusi. Pada penggunaan do-while, kondisi tidak diperiksa pada saat awal eksekusi, jadi minimal blok aksi pada statment do-while akan dieksekusi sekali.


TEORI SINGKAT
Struktur ini mendasarkan pengulangan pada kondisi boolean. Aksi di dalam badan pengulangan diulang sampai kondisi boolean bernilai true. Dengan kata lain, jika kondisi boolean masih false, pengulangan masih terus dilakukan. Karena proses pengulangan suatu saat harus berhenti, maka di dalam badan pengulangan harus ada aksi yang mengubah nilai variabel kondisi.
Bentuknya :
do
{
pernyataan1;
pernyataan2;
...........
pernyataan_N;
}
while (ungkapan)
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, tidak ada cek kondisi tetapi langsung mengerjakan pernyataan. 

CONTOH :
  •  Tuliskan program agar mendapat hasil output yang bilangan genap saja (0, 2, 4, 6, 8, 10, 12, 14, 16, 18, 20)
import java.util.Scanner;
 public class DoWhile
 {
  public static void main(String args[])
  {
   Scanner masuk = new Scanner(System.in);
   int bil;
   bil=0;
do{
System.out.println(bil);
     bil+=2;
} while (bil<=20);
    
  }
 }
Hasil Output:
0
2
4
6
8
10
12
14
16
18
20
BUILD SUCCESSFUL (total time: 1 second)
Di sini juga ada latihan yang bisa di coba untuk mengetahui lebih lanjut tentang perulangan DO WHILE :
  •  Buatlah program mencetak konversi suhu dari celcius ke fahreinhet mulai dari 1 sampai 10 dengan membuat tabel.
public class UlangDo2
{
public static void main(String args[])
{
int c;
double f;
System.out.println("---------------------------");
System.out.println("CELCIUS FAHREINHEIT");
System.out.println("---------------------------");
c=1;
do
{
f=1.8 * c + 32;
System.out.println("Celcius:"+c+"Fahreinhet: "+f);
c++;
} while (c<=10);
System.out.println("---------------------------");}}

Hasil Output :
------------------------------
CELCIUS FAHREINHEIT
------------------------------
Celcius : 1 Fahreinhet : 33.8
Celcius : 2 Fahreinhet : 35.6
Celcius : 3 Fahreinhet : 37.4
Celcius : 4 Fahreinhet : 39.2
Celcius : 5 Fahreinhet : 41.0
Celcius : 6 Fahreinhet : 42.8
Celcius : 7 Fahreinhet : 44.6
Celcius : 8 Fahreinhet : 46.4
Celcius : 9 Fahreinhet : 48.2
Celcius : 10 Fahreinhet : 50.0
-----------------------------
Press any key to continue . .
  •   Hitunglah rata-rata bilangan positif, dimana banyaknya data ditentukan dari data yang dimasukan.
public class DoWhile2
{
public static void main(String args[])
{
Scanner masuk=new Scanner(System.in);
int i=1;
float n, jum = 0, x = 0, rata;
System.out.println("Banyak data : ");
n = masuk.nextFloat();
do
{
      System.out.println("data ke- "+i);
x=masuk.nextFloat();
jum += x;
i++;
} while (i<=n);
        System.out.println("Jumlah ="+jum);
        System.out.println("Rata-rata ="+(jum/n)); 
    }
}
Hasil Output :
Banyak data : 4
Data ke-1 : 3
Data ke-2 : 4
Data ke-3 : 3
Data ke-4 : 2
Jumlah = 12.0
Rata-rata = 3.0
BUILD SUCCESSFUL (total time: 3 second)
  
3. Perulangan dengan FOR

Yang ketiga adalah perulangan dengan FOR. Struktur pengulangan FOR digunakan untuk mengulang statemen (pernyataan) atau satu blok statemen berulang kali dalam sebuah range tertentu. Jumlah pengulangan diketahui atau dapat ditentukan sebelum eksekusi. Untuk mencacah sudah jumlah pengulangan diperlukan sebuah variabel pencacah (counter). Variabel ini nilainya selalu bertambah satu setiap kali pengulangan dilakukan. Jika cacah pengulangan sudah mencapai jumlah yang dispesifikasikan, maka proses pengulangan berhenti.

TEORI SINGKAT
Sama seperti pernyataan perulangan while dan do...while, pernyataan for juga digunakan untuk mengerjakan pernyataan atau sekelompok pernyataan secara berulang. Bedanya adalah dengan pernyataan for perulangan akan dikerjakan dalam hitungan yang sudah pasti, sementara while dan do...while tidak.
Bentuknya :
for (ungkapan1;ungkapan2;ungkapan3)
Pernyataan;
Keterangan :
·         ungkapan1 merupakan pernyataan inisialisasi.
·         ungkapan2 sebagai kondisi yang menentukan pengulangan terhadap pernyataan atau tidak.
·         ungkapan3 digunakan sebagai pengatur variabel yang digunakan didalam ungkapan1.

 
CONTOH :
  •  Contoh Program For 1
public class UlangFor
{
public static void main (String args[])
{
int bil;
for (bil=1;bil<=5;bil++)
System.out.println(bil);
}
}
Maka akan ditampilkan hasil Output seperti berikut:
1
2
3
4
5
  •   Contoh program For 2
public class UlangFor2
{
public static void main (String args[])
{
int bil;
for (bil=5;bil>=1;bil--)
System.out.println(bil);
}
}
OUTPUT:
5
4
3
2
1
Di sini juga ada latihan yang bisa di coba untuk mengetahui lebih lanjut tentang perulangan DO WHILE :
  •     Buatlah program untuk menampilkan bilangan kelipatan 5 antara 125 sampai dengan 200
  • Program untuk menghitung jumlah dan rata – rata
public class For3
{
public static void main (String args[])
{
int bil;
for (bil=125;bil<=200;bil+=5)
System.out.println(bil);
}
}
 
 import java .util.Scanner;
public class ulangfor3
{
public static void main(String args[])
{
Scanner masuk=new Scanner(System.in);
int i;
float n,x,jum,rata;
System.out.print("Banyaknya data :");
n=masuk.nextFloat();
jum=0;
for(i=1;i<=n;i++){
System.out.println("Data ke-"+i+":");
x=masuk.nextFloat();
jum+=x;
}
System.out.println("jumlah :"+jum);
rata=jum/n;
System.out.println("rata :"+rata);
}
}
Hasil Output :
Banyak data : 4
Data ke-1 : 3
Data ke-2 : 4
Data ke-3 : 3
Data ke-4 : 2
Jumlah = 12.0
Rata-rata = 3.0
BUILD SUCCESSFUL (total time: 3 second)
  •  Buat sebuah program java yang digunakan menjumlahkan bilangan bulat positif yang lebih kecil dari 100.
  •   Buatlah program untuk menampilkan bilangan ganjil yang batas awal dan akhirnya dimasukkan melalui keyboard.
int bil,jumlah;
            jumlah=1;
            for(bil=1;bil<100;bil++){
            System.out.println(bil);
            jumlah+=bil;
              }
            System.out.println("Jumlah:"+jumlah);
    }  
}
Hasil Output :


public class ulangfor8
{
public static void main(String args[])
{
Scanner masuk=new Scanner(System.in);
int bil,a,b;
System.out.print("Masukan Batas awal :");
a=masuk.nextInt();
System.out.print("Masukan Batas akhir :");
b=masuk.nextInt();
for(bil=a;bil<=b;bil++){
if(bil%2!=0)
System.out.println(bil);
}
}
}
 
Jadi kesimpulan dari perulangan WHILE, DO WHILE, FOR, adalah :
  •   Pada struktur WHILE, aksi (atau runtunan aksi) akan dilaksanakan berulang kali selama kondisi bernilai true. Jika kondisi bernilai false, badan pengulangan tidak akan dilaksanakan, yang berarti pengulangan selesai.
  •  Pada penggunaan do-while, kondisi tidak diperiksa pada saat awal eksekusi, jadi minimal blok aksi pada statment do-while akan dieksekusi sekali. Intinya kondisi akan dicek diakhir program.
  •  Dan yang terahir adalah FOR :
  1.    Bedanya pernyataan for dengan while dan do.. while adalah perulangan akan dikerjakan dalam  hitungan yang sudah pasti, sementara while dan do...while tidak.
  2.   Struktur pengulangan FOR digunakan untuk mengulang statemen (pernyataan) atau satu blok  statemen berulang kali dalam sebuah range tertentu.
  3.   Untuk mencacah sudah jumlah pengulangan diperlukan sebuah variabel pencacah (counter). Variabel  ini nilainya selalu bertambah satu setiap kali pengulangan dilakukan.

Mungkin hanya ini pengetahuan yang dapat mahasiswa “Universitas Trunojoyo Madura” berikan. Kritik dan saran sangat saya butuhkan. Kurang lebihnya mohon maaf dan terima kasih.

Created by :
Fauzhiyah
(pend.informatika UTM)

Tidak ada komentar:

Posting Komentar

Hetalia: Axis Powers - Taiwan