Struktur Algoritma


Algoritma berisi langkah-langkah penyelesaian masalah dengan urutan langkah yang logis. Langkah – langkah tersebut dapat berupa runtunan aksi, pemilihan aksi, dan pengulangan aksi.

1. Runtunan (Sequence)

Sebuah runtunan terdiri dari satu atau lebih pernyataan. Tiap pernyataan (instruksi) dikerjakan sesuai dengan urutan penulisannya, misalnya jika kita memiliki lima buah instruksi yang harus dikerjakan, instruksi yang pertama harus selesai diselesaikan terlebih dahulu baru dilanjutkan ke instruksi yang kedua, dan begitu seterusnya. Jika urutannya diubah, maka kemungkinan hasilnya pun akan berubah. Runtunan satu atau lebuh pernyataan disebut juga pernyataan-gabungan (compound statements).

Perhatikan runtunan pernyataan(instruksi) yang dilambangkan dengan A1, A2, 
A3, A4, dan A5 berikut:
A1
A2
A3
A4
A5

Mula-mula pemroses melaksanakan pernyataan A1. Jika A1 telah selesai dikerjakan, pemroses melaksanakan pernyataan A2. Jika A2 telah selesai dikerjakan, pemroses melaksanakan pernyataan A3, dan begitu seterusnya sampai pernyataan A5 dikerjakan.

Contoh algoritma:

Diberikan dua buah tabung, A dan B; tabung A berisi air yang jernih, tabung B berisi air yang sangat kotor. Pertukarkan kedua tabung tersebut sedemikian sehingga tabung A berisi air yang sangat kotor dan tabung B berisi air yang jernih.

Algoritma:
1. Tuangkan air dari tabung A ke dalam tabung C.
2. Tuangkan air dari tabung B ke dalam tabung A.
3. Tuangkan air dari tabung C ke dalam tabung B.

2. Pemilihan (Selection)

Pemilihan adalah suatu keadaan dimana aksi akan dikerjakan jika kondisi tertentu dapat dipenuhi.
Pernyataan pemilihan (selection-statement) atau disebut juga pernyataan kondisional dapat ditulis sebagai berikut:

if kondisi then
 aksi 1
else 
 aksi 2

Bila kondisi bernilai benar, aksi 1 akan dikerjakan, tetapi kalau tidak, aksi 2 yang akan dikerjakan. Misalnya pada pernyataan berikut:

if nilai > 75 then 
 lulus ujian
else
 tidak lulus ujian

Apabila pemilihan aksi lebih dari dua buah (pemilihan bersarang atau nested-if), maka struktur pemilihannya sedikit lebih rumit. Perhatikan contoh berikut ini:

if nilai > 90 then 
 A
else if nilai > 80 then
 B
else if nilai > 70 then 
 C
else if nilai > 60 then 
 D
else
 E
3. Pengulangan (Repetition)

Pengulangan adalah suatu cara untuk mengulangi instruksi secara terus-menerus sampai suatu kondisi tertentu dipenuhi. Pernyataan pengulangan (repetition-statement) dapat ditulis dengan beberapa cara :

1. for-do

for pencacah pengulangan dari i sampai N do
 aksi

Yang artinya adalah aksi dilakukan sebanyak hitungan pencacah pengulangan, yaitu dari i sampai N sebanyak N-i + 1 kali.

Contoh algoritma pengulangan :
Tuliskan kalimat “Saya berjanji tidak akan bolos sekolah lagi” sebanyak 250 kali.

Algoritma:

for i dari 1 sampai 250 do
 Tulis "Saya berjanji tidak akan bolos sekolah lagi"

2. repeat-until

repeat
 aksi
until
 kondisi

Yang artinya adalah pengulangan aksi dilakukan hingga kondisi terpenuhi.

Contoh algoritma pengulangan :
Tuliskan kalimat “Saya berjanji tidak akan bolos sekolah lagi” sebanyak 250 kali.

Algoritma:

repeat 
 Tulis "Saya berjanji tidak akan bolos sekolah lagi"
until 
 (i > 250)

3. while-do

while kondisi do
 aksi

Yang artinya adalah selama kondisi pengulangan masih benar, maka aksi dikerjakan. Perbedaannya dengan repeat-until, jika pada repeat-until kondisi pengulangan di evaluasi di akhir, maka pada while-do kondisi pengulangan di evaluasi di awal pengulangan. Walaupun keduanya memiliki fungsi yang mirip, namun untuk beberapa kasus tidak dapat saling menggantikan.

Contoh algoritma pengulangan :
Tuliskan kalimat “Saya berjanji tidak akan bolos sekolah lagi” sebanyak 250 kali.

Algoritma:

while (i < 251) do
 Tulis "Saya berjanji tidak akan bolos sekolah lagi"

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s