BENTUK DASAR ALGORITMA
A. BENTUK STRUKTUR SEKUENSIAL
Struktur sekuensial (struktur runtunan) adalah salah satu bentuk struktur dasar algoritma yang terdiri dari satu atau lebih instruksi. Setiap instruksi dapat ditulis dalam satu baris atau beberapa instruksi ditulis dalam satu baris dan masing-masingnya dipisahkan dengan tanda titik koma atau tanda baca lainnya.
Struktur sekuensial (struktur runtunan) adalah salah satu bentuk struktur dasar algoritma yang terdiri dari satu atau lebih instruksi. Setiap instruksi dapat ditulis dalam satu baris atau beberapa instruksi ditulis dalam satu baris dan masing-masingnya dipisahkan dengan tanda titik koma atau tanda baca lainnya.
Di dalam sebuah runtunan, setiap instruksi dikerjakan secara berurutan (sekuensial) sesuai dengan urutannya di dalam algoritma. Secara sekuensial artinya suatu instruksi dikerjakan setelah instruksi sebelumnya dikerjakan. Urutan instruksi menentukan keadaan akhir algoritma, artinya bila urutannya diubah, maka hasil akhirnya mungkin juga berubah.
Misalkan ada lima buah instruksi yang masing-masing dilambangkan dengan I1, I2, I3, I4, dan I5. Misalkan sebuah runtunan yang terdiri dari lima instruksi ditulis dalam urutan berikut:
I1
I2
I3
I4
I5
Maka, bila runtunan tersebut dilaksanakan oleh sebuah pemroses, maka pelaksanaannya adalah sebagai berikut. Mula-mula pemroses melaksanakan instruksi I1. Selanjutnya instruksi I2 dilaksanakan setelah instruksi I1 selesai dikerjakan. Berikutnya, instruksi I3 dilaksanakan setelah instruksi I2 selesai. Demikian seterusnya hingga instruksi terakhir I5 dilaksanakan. Setelah instruksi I5 selesai dilaksanakan, maka runtunan pun selesai.
Sebagai contoh pertama, tinjau kembali algoritma mempertukarkan isi dua buah gelas A dan B:
ALGORITMA mempertukarkan isi dari dua buah gelas A dan B:
1. Tuangkan larutan gelas A ke gelas C.
2. Tuangkan larutan gelas B ke gelas A.
3. Tuangkan larutan gelas C ke gelas B.
Algoritma di atas adalah sebuah runtunan yang terdiri dari tiga buah instruksi. Tiap instruksi dilaksanakan dalam urutan yang sama sebagaimana tertulis di dalam algoritma. Hasil akhir (yang diharapkan dari) algoritma ini adalah: gelas A berisi air dari gelas B, dan gelas B berisi air dari gelas A semula.
Di dalam sebuah runtunan, urutan instruksi menggambarkan logika berpikir penulisnya (yang berarti logika penyelesaian persoalan). Kesalahan urutan penulisan (yang berarti kesalahan logika berpikir) menyebabkan solusi yang dihasilkan oleh algoritma juga salah. Misalkan pada algoritma pertukaran gelas di atas urutan instruksinya diubah sebagai berikut:
1. Tuangkan larutan gelas A ke gelas C.
2. Tuangkan larutan gelas C ke gelas B.
3. Tuangkan larutan gelas B ke gelas A.
Apa hasilnya? Salah, bukan? Ini namanya kesalahan logika. Logika memainkan peranan sangat penting di dalam algoritma dan pemrograman.
Contoh kedua, tinjau algoritma untuk menghitung harga barang dari supermarket/pasar swalayan setelah mendapat diskon sebesar p%.
ALGORITMA Menghitung harga barang setelah diskon:
1. Input harga barang.
2. Input p.
3. Hitung potongan harga = harga baranf * p.
4. Hitung harga barang setelah diskon = harga barang - potongan harga.
5. Tulis harga barang setelah diskon.
Algoritma di atas adalah sebuah runtunan yang terdiri dari lima barang instruksi. Instruksi pertama adalah meminta input harga barang (harga barang sebelum diskon). Instruksi kedua adalah instruksi meminta input besar diskon, yaitu p (dalam persen). Setelah harga barang dan besar diskon diketahui, maka instruksi ketiga adalah menghitung potongan harga, yaitu harga barang dikali dengan besar diskon. Instruksi keempat menghitung harga barang setelah diskon, yaitu harga barang semula dikurangi dengan potongan harga. Instruksi terakhir menampilkan harga barang setelah di diskon. Urutan instruksi di dalam algoritma menggambarkan logika penyelasaian persoalan. Urutan tersebut sudah cukup jelas. Tidak mungkin anda menulis harga barang setelah diskon sebelum anda menghitung potongan harga,bukan? Jadi, algoritma itu bersesuaian dengan urut-urutan cara berpikir manusia dalam menyelesaikan persoalah sehari-hari.
B. BENTUK STRUKTUR KASUS/PEMILIHAN
Pada umumnya instruksi algoritma setidaknya akan mengandung pemilihan, atau selection, instruksi ini akan muncul apabila ada kasus yang memiliki 2 atau lebih alternatif penyelesaian.
Misalkan dalam kehidupan sekali-kali, untuk kasus menyalakan komputer. Langkah-langkah cara menyalakan komputer sebenarnya sangat mudah, namun pada prosesnya bisa terjadi 2 atau lebih alternatif penyelesaian.
Contoh:
langkah 1: colokan kabel listrik,
langkah 2: tekan tombol power pada cashing.
langkah 3: jika setelah power ditekan komputer mati, maka periksa listrik atau periksa kabel dll, jika komputer menyala, lanjutkan ke langkah berikutnya.
....
....
Langkah 3 di atas merupakan salah satu bentuk pemilihan atau selection, bahwa pada saat proses menyalakan komputer bisa kemungkinan terjadi 2 kondisi, komputer tatap mati atau hidup, dimana kedua kondisi tersebut akan memiliki alternatif penyelesaian yang berbeda.
Di dalam struktur algoritma pemilihan atau selection tersebut akan kerap sekali ditemukan, sehingga struktur algoritma tidak lepas dari pemilihan/ selection.
C. BENTUK STRUKTUR PENGULANGAN
Struktur dasar algoritma yang ketiga adalah pengulangan atau repitition, artinya kasus-kasus pemecahan masalah dalam algoritma maupun bahasa pemrograman pada kenyataannya tidak akan lepas dari kasus-kasus yang membutuhkan pengulangan.
Di algoritma sendiri untuk mengatasi kasus pengulangan data, memiliki intruksi tersendiri, dengan intruksi tersebut pengulangan akan lebih mudah ditulis secara singkat dan praktis daripada harus di tulis satu-persatu.
Contoh:
Da kasus di algoritma yang membuat sebuah data harus diulang beberapa kali, misal untuk kasus mencetak angka 1 sampai 5.
Penyelesaian pengulangan sebenarnya sangat mudah, bisa saja kita tulis satu persatu misal;
langkah 1: tulis angka 1
langkah 2: tulis angka 2
langkah 3: tulis angka 3
...
...
langkah 5: tulis angka 5.
Membuat intruksi pengulangan dengan menuliskannya satu persatu tentunya bukanlah cara praktis, jika hanya 5 baris mungkin saja bisa dibuat secara manual, ditulis satu-satu, namun bagaimana jika yang harus diulang sebanyak 1.000 (seribu baris misalnya), saya yakin anda akan kerepotan menuliskannya.
Oleh karena itu karena kerap sekali pengulangan ditemukan di kasus-kasus pemecahan masalah terkomputerisasi, maka di algoritma dikenal struktur pengulangan yang akan lebih memudahkan dan mempercepat penulisan proses pengulangan secara praktis dan cepat. (pengulangan ini biasanya dipelajari di materi algoritma Looping/ pengulangan).
B. BENTUK STRUKTUR KASUS/PEMILIHAN
Pada umumnya instruksi algoritma setidaknya akan mengandung pemilihan, atau selection, instruksi ini akan muncul apabila ada kasus yang memiliki 2 atau lebih alternatif penyelesaian.
Misalkan dalam kehidupan sekali-kali, untuk kasus menyalakan komputer. Langkah-langkah cara menyalakan komputer sebenarnya sangat mudah, namun pada prosesnya bisa terjadi 2 atau lebih alternatif penyelesaian.
Contoh:
langkah 1: colokan kabel listrik,
langkah 2: tekan tombol power pada cashing.
langkah 3: jika setelah power ditekan komputer mati, maka periksa listrik atau periksa kabel dll, jika komputer menyala, lanjutkan ke langkah berikutnya.
....
....
Langkah 3 di atas merupakan salah satu bentuk pemilihan atau selection, bahwa pada saat proses menyalakan komputer bisa kemungkinan terjadi 2 kondisi, komputer tatap mati atau hidup, dimana kedua kondisi tersebut akan memiliki alternatif penyelesaian yang berbeda.
Di dalam struktur algoritma pemilihan atau selection tersebut akan kerap sekali ditemukan, sehingga struktur algoritma tidak lepas dari pemilihan/ selection.
C. BENTUK STRUKTUR PENGULANGAN
Struktur dasar algoritma yang ketiga adalah pengulangan atau repitition, artinya kasus-kasus pemecahan masalah dalam algoritma maupun bahasa pemrograman pada kenyataannya tidak akan lepas dari kasus-kasus yang membutuhkan pengulangan.
Di algoritma sendiri untuk mengatasi kasus pengulangan data, memiliki intruksi tersendiri, dengan intruksi tersebut pengulangan akan lebih mudah ditulis secara singkat dan praktis daripada harus di tulis satu-persatu.
Contoh:
Da kasus di algoritma yang membuat sebuah data harus diulang beberapa kali, misal untuk kasus mencetak angka 1 sampai 5.
Penyelesaian pengulangan sebenarnya sangat mudah, bisa saja kita tulis satu persatu misal;
langkah 1: tulis angka 1
langkah 2: tulis angka 2
langkah 3: tulis angka 3
...
...
langkah 5: tulis angka 5.
Membuat intruksi pengulangan dengan menuliskannya satu persatu tentunya bukanlah cara praktis, jika hanya 5 baris mungkin saja bisa dibuat secara manual, ditulis satu-satu, namun bagaimana jika yang harus diulang sebanyak 1.000 (seribu baris misalnya), saya yakin anda akan kerepotan menuliskannya.
Oleh karena itu karena kerap sekali pengulangan ditemukan di kasus-kasus pemecahan masalah terkomputerisasi, maka di algoritma dikenal struktur pengulangan yang akan lebih memudahkan dan mempercepat penulisan proses pengulangan secara praktis dan cepat. (pengulangan ini biasanya dipelajari di materi algoritma Looping/ pengulangan).
Source :
Munir, Rinaldi. 2016. Algoritma Dan Pemrograman Dalam Bahasa Pascal, C, Dan C++. Bandung: Informatika.
Referensi Siswa. (2019, 25 Juli). Algoritma (Pengertian,struktur, jenis, istilah dan contoh algoritma bahasa natural, flow chart dan pseudocode). Diakses pada 10 Januari 2020, dari http://referensisiswa.blogspot.com/2019/07/algoritma.html
Komentar
Posting Komentar