Algoritma adalah langkah-langkah yang disusun secara tertulis dan berurutan untuk menyelesaikan suatu masalah. Sedangkan Algoritma Pemrograman adalah langkah-langkah yang ditulis secara berurutan untuk menyelesaikan masalah pemrograman komputer.
Struktur Dasar Algoritma
Algoritma berisi
langkah-langkah penyelesaian suatu masalah. Langkah-langkah tersebut dapat
berupa runtunan aksi (sequence), pemilihan aksi (selection), pengulangan aksi
(iteration) atau kombinasi dari ketiganya. Jadi struktur dasar pembangunan
algoritma ada tiga, yaitu:
1. Struktur Runtunan /
Beruntun : Digunakan untuk program yang pernyataannya sequential atau urutan.
2. Struktur Pemilihan /
Percabangan : Digunakan untuk program yang menggunakan pemilihan atau
penyeleksian kondisi.
3. Struktur Perulangan :
Digunakan untuk program yang pernyataannya akan dieksekusi berulang-ulang.
1.
Struktur Algoritma Runtunan /
Berurutan
Ada tiga struktur dasar
yang digunakan dalam membuat algoritma yaitu struktur berurutan (sequencing),
struktur pemilihan/keputusan/percabangan (branching) dan struktur pengulangan
(looping). Sebuah algoritma biasanya akan menggabungkan ketiga buah struktur
ini untuk menyelesaikan masalah. Struktur berurutan dapat kita samakan dengan
mobil yang sedang berjalan pada jalur lurus yang tidak terdapat persimpangan
seperti tampak pada Gambar disamping Mobil tersebut akan melewati kilometer
demi kilometer jalan sampai tujuan tercapai. Struktur berurutan terdiri satu
atau lebih instruksi. Tiap instruksi dikerjakan secara berurutan sesuai
dengan urutan penulisannya, yaitu sebuah instruksi dieksekusi setelah instruksi
sebelumnya selesai dieksekusi. Urutan instruksi menentukan keadaan akhir dari
algoritma. Bila urutannya diubah, maka hasil akhirnya mungkin juga berubah.
Menurut Goldshlager dan Lister (1988) struktur berurutan mengikuti ketentuan-ketentuan
sebagai berikut:
Tiap instruksi
dikerjakan satu persatu
Tiap instruksi
dilaksanakan tepat sekali, tidak ada yang diulang
Urutan instruksi yang
dilaksanakan pemroses sama dengan urutan aksi sebagaimana yang tertulis di
dalam algoritmanya
Akhir dari instruksi terakhir
merupakan akhir algoritma
2.
Struktur Algoritma
Percabangan
Sebuah
program tidak selamanya akan berjalan dengan mengikuti struktur berurutan,
kadang-kadang kita perlu merubah urutan pelaksanaan program dan menghendaki
agar pelaksanaan program meloncat ke baris tertentu. Peristiwa ini kadang
disebut sebagai percabangan/pemilihan atau keputusan. Hal ini seperti halnya
ketika mobil/motor berada dalam persimpangan Pada struktur percabangan, program
akan berpindah urutan pelaksanaan jika suatu kondisi yang disyaratkan dipenuhi.
Pada proses seperti ini simbol flowchart Decision harus digunakan. Simbol decision
akan berisi pernyataan yang akan diuji kebenarannya. Nilai hasil pengujian akan
menentukan cabang mana yang akan ditempuh.
Contoh
Struktur percabangan untuk masalah batasan umur.
Sebuah
aturan untuk menonton sebuah film tertentu adalah sebagai berikut, jika usia
penonton lebih dari 17 tahun maka penonton diperbolehkan dan apabila kurang
dari 17 tahun maka penonton tidak diperbolehkan nonton. Buatlah flowchart untuk
permasalahan tersebut.
Penyelesaian:
Permasalahan diatas
merupakan ciri permasalahan yang menggunakan struktur percabangan. Hal ini
ditandai dengan adanya pernyataan jika ..maka ...(atau If ... Then dalam Bahasa
Inggris.
Bagan
alir logika (Flowchart) penyelesaian masalah nonton film
3.
Struktur Algoritma Perulangan /
Pengulangan
Dalam banyak kasus
seringkali kita dihadapkan pada sejumlah pekerjaan yang harus diulang
berkali.Salah satu contoh yang gampang kita jumpai adalah balapan mobil
Struktur pengulangan terdiri dari dua bagian : Kondisi pengulangan, yaitu
syarat yang harus dipenuhi untuk melaksanakan pengulangan. Syarat ini biasanya
dinyatakan dalam ekspresi Boolean yang harus diuji apakah bernilai benar (true)
atau salah (false) Badan pengulangan (loop body), yaitu satu atau lebih
instruksi yang akan diulang Pada struktur pengulangan, biasanya juga disertai
bagian inisialisasi dan bagian terminasi.
Inisialisasi adalah
instruksi yang dilakukan sebelum pengulangan dilakukan pertama kali. Bagian
insialisasi umumnya digunakan untuk memberi nilai awal sebuah variable.
Sedangkan terminasi adalah instruksi yang dilakukan setelah
pengulangan selesai dilaksanakan. Ada beberapa bentuk pengulangan yang dapat
digunakan, masing-masing dengan syarat dan karakteristik tersendiri. Beberapa
bentuk dapat dipakai untuk kasus yang sama, namun ada bentuk yang hanya cocok
untuk kasus tertentu saja. Pemilihan bentuk pengulangan untuk masalah tertentu
dapat mempengaruhi kebenaran algoritma. Pemilihan bentuk pengulangan yang tepat
bergantung pada masalah yang akan diprogram.
Bagan
alir logika (flowchart) untuk mencetak pernyataan sebanyak 100 kali
Bagan
alir logika (Flowchart) untuk mencetak anggota suatu himpunan
4.
Struktur pengulangan dengan For
Pengulangan dengan menggunakan For, merupakan
salah teknik pengulangan yang paling tua dalam bahasa pemrograman. Hampir semua
bahasa pemrograman menyediakan metode ini, meskipun sintaksnya mungkin berbeda.
Pada struktur For kita harus tahu terlebih dahulu seberapa banyak badan loop
akan diulang. Struktur ini menggunakan sebuah variable yang biasa disebut
sebagai loop s counter, yang nilainya akan naik atau turun selama proses
pengulangan.
Contoh
: Diketahui sebuah himpunan A yang
beranggotakan bilangan 1, 3, 5, .., 19. Buatlah flowchart untuk mencetak
anggota himpunan tersebut. Penyelesaian: Pada contoh ini, kita mencoba
menentukan hasil dari sebuah flowchart . Bagaimana menurut kalian jawabannya?
Marilah kita uraikan jalannya fowchart tersebut. Pada flowchart, setelah Start,
kita meletakkan satu proses yang berisi pernyataan A = 1. Bagian inilah yang
disebut inisialisasi . Kita memberi nilai awal untuk A = 1. Variabel
counter-nya adalah X dengan nilai awal 1 dan nilai akhir 10, tanpa increment
(atau secara default increment-nya adalah 1). Ketika masuk ke badan loop untuk
pertama kali maka akan dicetak langsung nilai variabel A. Nilai variabel A
masih sama dengan 1. Kemudian proses berikutnya adalah pernyataan A = A + 2.
Pernyataan ini mungkin agak aneh, tapi ini adalah sesuatu yang pemrograman.
Arti dari pernyataan ini adalah gantilah nilai A yang lama dengan hasil penjumlah
nilai A lama ditambah 2. Sehingga A akan bernilai 3. Kemudian dilakukan
pengulangan yang ke-dua. Pada kondisi ini nilai A adalah 3, sehingga yang
tercetak oleh perintah print adalah 3. Baru kemudian nilai A kita ganti dengan
penjumlahan A + 2. Nilai A baru adalah 5. Demikian seterusnya. Sehingga output
dari flowchart ini adalah 1,3, 5, 7, .., 19.
5. Struktur pengulangan
dengan While
Pada pengulangan dengan For, banyaknya
pengulangan diketahui dengan pasti karena nilai awal (start) dan nilai akhir
(end) sudah ditentukan diawal pengulangan. Bagaimana jika kita tidak tahu pasti
harus berapa kali mengulang? Pengulangan dengan While merupakan jawaban dari
permasalahan ini. Seperti halnya For, struktur pengulangan dengan While juga
merupakan struktur yang didukung oleh hampir semua bahasa pemrograman namun
dengan sintaks yang berbeda. Struktur While akan mengulang pernyataan pada
badan loop sepanjang kodisi pada While bernilai benar. Dalam artian kita tidak
perlu tahu pasti berapa kali diulang. Yang penting sepanjang kondisi pada While
dipenuhi maka pernyataan pada badan loop akan diulang.
Reni Atia
BalasHapusXA
Hadir
Nama:melsi auliantri
BalasHapuskls :Xa
ket :hadir
Nama:Jeni Pramudya
BalasHapusKLS:Xa
Ket:Hadir
Nadia
BalasHapusKls: 10 b
Nama : Okta Ramadani
BalasHapusKls:xc
Ket: hadir
Marsono
BalasHapusXa
Hadir
Nama:deri irawan
BalasHapusKls:xc
Ket :hadir
Nama:Tiza irpana
BalasHapusKls :XA
Ket : hadir
Nama :Fran FebriHatma
BalasHapusKelas:XA
Ket :Hadir
Nama:Nanik nur aidah
BalasHapusKelas:XA
Ket:hadir
Yuliana Tantri
BalasHapusXa
Hadir
NAMA: SELPI ARIANTI
BalasHapusKELAS:XA
KET:HADIR
Nama:Khoirul anam
BalasHapusKls:xa
ket:hadir
Sinta wulandari
BalasHapusX. A
Hadir
Nama:ego prastio
BalasHapusKls:Xb
Ket:hadir
Nama:Dimas andrean
BalasHapusKls:Xb
Ket:Hadir
Nama:ayu nur habibah
BalasHapusKelas:Xa
Ket:hadir
Nama:Resa rusadi
BalasHapuskls:xa
ket:hadir
Nama : ERIN JULITA
BalasHapusKELAS:XB
KET :HADIR
NAMA:PUJA LESTARI PUTRI
BalasHapusKLS:XA
KET:HADIR
Nama: trivianna Limbong
BalasHapusKls:XA
Ket: hadir
Nama:Deny Pradita
BalasHapusKls:xb
Ket: hadir
Januar
BalasHapusXb
Hadir
Nama urdiansyah
BalasHapusKls Xb
Ket hadir
Rahma Zulviana
BalasHapusXb
Hadirr
Nama:Sonia sasma duwita
BalasHapusKls:Xb
Ket:hadir
Rahayu khoiril fajri
BalasHapusXa
Hadir
Nama:bagus nur habibi
BalasHapusKelas:Xb
Ket:hadir
Nama: Rian Andri Ansah
BalasHapusKls:xa
Ket:hadir
Nama:Enjel Br Nainggolan
BalasHapusKelas:Xa
Ket:Hadir
Silviana
BalasHapusKls xa
Komentar ini telah dihapus oleh pengarang.
BalasHapusNama: yutina Dian Sari Zebua
BalasHapusKls:xb
Ket: hadir