Bentuk Struktur Pengulangan

Algoritma Perulangan atau Looping Algorithm adalah sebuah struktur dasar algoritma yang menjalankan beberapa langkah tertentu secara berulang-ulang sampai terpenuhinya suatu kondisi. Pada kehidupan sehari-hari banyak yang kita lakukan secara berulang-ulang, contohnya seperti algoritma menjemur pakaian:
1. Siapkan tiang Jemuran
2. Ambil satu pakaian yang sudah dicuci
3. Peras pakaian hingga sedikit mengering
4. Letakan pakaian pada tiang jemuran
5. Ulangi langkah 2 sampai 4 hingga pakaian habis.
Dari algoritma menjemur pakaian diatas, kita dapat mendapat gambaran tentang struktur algoritma looping. Jenis struktur dasar ini akan selesai jika sebuah kondisi tertentu terpenuhi, seperti menjemur pakaian maka proses jemur akan selesai jika pakaian yang akan dijemur sudah habis. Struktur dasar algoritma ini mempunyai beberapa bentuk seperti Struktur FOR, Struktur While dan Struktur Do….While.’

A. Struktur FOR

            Struktur dasar algoritma perulangan menggunakan instruksi FOR digunakan untuk mengulang satu baris instrusi atau beberapa baris instruksi sampai jumlah perulangan yang disyaratkan terpenuhi. Ciri-ciri utama struktur perulangan menggunakan FOR adalah terdapat nilai awal dan nilai akhir yang menunjukkan syarat yang harus terpenuhi. Berikut Flowchart menggunakan FOR :

Gambar diatas menjelaskan bahwa Instruksi_1, Instruksi_2 dan Instruksi_3 akan dieksekusi atau dikerjakan ketika syarat terpenuhi. Perulangan menggunakan struktur FOR dimulai dari Nilai_Awal dan akan berhenti pada Nilai_Akhir. Untuk lebih jelasnya kita lihat contoh algoritma mencetak angka menggunakan FOR, program akan dicetak angka 1 sampai 5.
Deskripsi :
1. Mulai
2. Kerjakan Langkah 3 mulai i = 1 sampai i = 5
3. Cetak i
4. Selesai

Gambar flowchart diatas, menjelaskan bahwa nilai i awal berisi 1, kemudian dicetak nilai i awal yaitu 1. Dalam struktur perulangan menggunakan FOR, nilai variabel i akan bertambah secara otomatis sehingga nilai variabel i. Setelah ditambahkan secara otomatis, sekarang i = 2 lalu cetak nilai variabel i. Proses tersebut akan dijalankan sampai kondisi yang sudah ditentukan terpenuhi yaitu i = 5 maka proses looping akan berhenti. Jika belum paham kita pelajari dengan seksama contoh ke 2, algoritma Cetak Bilangan Genap menggunakan struktur FOR, program akan mencetak bilangan genap mulai dari 0 dengan batas akhir 10 dengan menggunakan struktur looping FOR.

Deskripsi :
1. Mulai
2. Kerjakan langkah 3 sampai langkah 4 mulai i = 1 sampai i = 10
3. Jika i dibagi 2 sama dengan 0 maka kerjakan langkah 4
4. Cetak i
5. Selesai

Gambar flowchart diatas, menjelaskan bahwa program akan mengeksekusi syarat yang dijabarkan dengan FOR, diketahui nilai i pertama kali berisi 1 kemudian diuji apakah nilai i tersebut habis dibagi dengan 2. Jika benar maka nilai i akan dicetak kemudian dilakukan penambahan otomatis sehingga nilai i menjadi 2. Namun jika salah, nilai i akan langsung ke langkah penambahan otomatis. Proses tersebut akan dieksekusi terus sampai nilai i lebih besar dari 10.

B. Struktur WHILE
          Struktur looping dengan menggunakan WHILE berfungsi hampir mirip dengan FOR yaitu mengulang satu baris instruksi atau beberapa baris instruksi selama syarat yang ditentukan masih terpenuhi. Ciri-ciri utama dari struktur WHILE adalah syarat yang ditentukan akan diuji lebih dahulu sebelum instruksi-instruksi dieksekusi dalam perulangan. Catatan Penting : pada Struktur WHILE akan menguji syarat yang ditentukan terlebih dahulu, sehingga jika syarat tidak terpenuhi ada kemungkinan instruksi-istruksi pada perulangan tidak dikerjakan.
Gambar diatas menjelaskan bahwa syarat akan diuji oleh pemroses terlebih dahulu sebelum mengeksekusi instruksi-instruksi yang akan diulang. Jika syarat yang diuji benar, maka instruksi akan dieksekusi. Setelah instruksi dikerjakan maka syarat akan diuji lagi, proses perulangan ini akan berhenti jika syarat yang telah diuji bernilai salah. Untuk lebih jelasnya, kita simak contoh algoritma cetak angka menggunakan WHILE, program akan mencetak angka 1 sampai 5 dengan struktur WHILE.

Deskripsi :
1. Mulai
2. i = 1
3. Selama i <= 5 kerjakan langkah 4 sampai langkah 5
4. Cetak i
5. i = i + 1
6. Selesai



Gambar flowchart diatas, menjelaskan bahwa nilai i pertama kali bernilai 1. Kemudian akan diuji apakah nilai i lebih kecil atau sama dengan (<=) 5, jika benar maka nilai i dicetak. Kemudian nilai i ditambah 1, lalu nilai i akan diuji kembali apakah masih memenuhi syarat yang sudah di deklaraskikan diawal, jika benar maka nilai i akan dicetak. Langkah perulangan akan berjalan terus sampai nilai i lebih besar dari 5. Catatan penting : Pada struktur WHILE penambahan tidak dilakukan secara otomatis seperti pada struktur FOR, sehingga kita perlu menambahkan instruksi lagi. Untuk lebih jelasnya kita liat lagi contoh berikutnya algoritma cetak bilangan genap menggunakan WHILE, program akan mencetak bilangan genap sampai 10 dengan menggunakan struktur perulangan WHILE.

Deskripsi :
1. Mulai
2. i = 1
3. Selama i <= 10 kerjakan langkah 4 sampai langkah 6
4. Jika i habis dibagi 2 kerjakan langkah 5
5. Cetak i
6. i = i + 1
7. Selesai
   


Pada gambar flowchart diatas, dapat dijelaskan pertama adalah nilai i diberikan nilai 1. Lalu nilai i diuji apakah nilai i lebih kecil atau sama dengan (<=) 10, jika benar maka akan dilakukan operasi aritmatika yaitu nilai i dibagi 2, jika habis atau hasilnya 0 maka akan dicetak nilai i dan jika sebaliknya maka nilai i tidak tercetak dan langsung keproses berikutnya. Proses berikutnya adalah nilai i akan ditambah 1, sebelumnya nilai i adalah 1 maka setelah proses ini menjadi 2. Kemudian nilai i diuji kembali sampai nilai i lebh besar dari 10 barulah proses perulangan menggunakan WHILE berakhir.

C. Struktur DO…WHILE
Struktur looping dengan DO…WHILE digunakan untuk mengulangi satu baris instruksi atau beberapa baris instruksi sampai syarat yang ditetapkan tidak terpenuhi. Ciri-ciri utama dari struktur DO…WHILE ialah syarat akan diuji setelah instruksi dikerjakan seluruhnya atau bisa kita katakan pengujian pada syarat dilakukan dibelakang. Catatan penting : Struktur menggunakan DO…WHILE berbeda dengan menggunakan WHILE, jika DO…WHILE melakukan pengujian di akhir dan WHILE melakukan pengujian di awal.


Pada gambar flowchart diatas, kita bisa lihat bahwa instruksi_1, instruksi_2 dan instruksi_3 akan dikerjakan dahulu baru syarat akan diuji. Jika syarat yang diuji bernilai benar maka instruksi_1 sampai instruksi_3 akan dikerjakan kembali. Setelah dikerjakan kembali maka syarat akan diuji lagi, perulangan akan selesai jika syarat yang diuji bernilai salah. Untuk lebih jelasnya kita lihat contoh algoritma cetak angka DO…WHILE, program akan mencetak angka 1 sampai 5 dengan menggunakan DO…WHILE

Deskripsi :
1. Mulai
2.  i = 0
3.  i = i + 1
4. Cetak i
5. Jika i <= 5 kerjakan langkah 3 sampai langkah 4
6. Selesai
 Pada gambar diatas, pertama kali variabel i diberi nilai awal adalah 0. Kemudian nilai i ditambah 1 sehingga nilai i menjadi 1, Lalu nilai i dicetak. Langkah selanjutnya adalah nilai i diuji apakah lebih kecil atau sama dengan (<=) 5, jika hasil uji bernilai benar maka akan kembali ke instruksi ke 1 yaitu nilai i ditambah 1 sehingga nilai i sekarang menjadi 2. Kemudian nilai i dicetak dan diuji kembali, perulangan akan berhenti sampai nilai i lebih besar dari 5. Kita lihat contoh berikutnya algoritma cetak bilangan genap, program akan mencetak bilangan genap dari 1 sampai 10 menggunakan struktur perulangan DO…WHILE.

Deskripsi :
1. Mulai
2. i = 1
3. Selama i <= 10 kerjakan langkah 4 sampai langkah 6
4. Jika i habis dibagi 2 kerjakan langkah 5
5. Cetak i
6. i = i + 1
7. Selesai

Pada gambar flowchart, instruksi pertama adalah nilai i adalah 1. Instruksi selanjutnya pengujian nilai i habis dibagi 2, jika benar maka nilai i dicetak kemudian nilai i ditambah 1 sehingga nilai i menjadi 2. Jika salah maka instruksi nilai i ditambah 1 sehingga menjadi 2. Instruksi berikutnya adalah pengujian apakah nilai i lebih kecil atau sama dengan 10, jika benar maka akan kembali pada instruksi ke 2 yaitu diuji apakah nilai i habis dibagi 2, begitulah seterusnya sampai nilai i lebih besar dari 10 barulah perulangan selesai.


Comments

Popular Posts