Algoritma adalah urutan atau langkah-langkah untuk menyelesaikan suatu masalah atau kasus dengan terurut. Dalam hal ini algoritma bisa digunakan untuk apapun, apalagi perkembangan zaman yang sudah sangat bagus untuk kehidupan sehari-hari mulai kita tahu ada AI ( Artificial Intelligence ) yaitu kecerdasan buatan, sehingga android ataupun ios di desain dengan suatu algoritma yang terurut.

Nah kali ini saya mau membagikan apa-apa aja sih bagian- bagian dari algoritma itu. Sebelum hal itu kita pelajari dahulu algoritma tersebut dari contoh-contoh di bawah,

Contoh 1

Daftar Isi:

“ Terdapat dua jenis minuman dalam 2 gelas ( teh dan coffe ) berukuran sama gelas A berisi teh dan gelas B berisi coffe , kedua minuman akan ditukarkan tempatnya yaitu gelas A berisi gelas B dan juga sebaliknya. “
Nah apakah 2 gelas tersebut yang berbeda bisa di pindahkan antar tempat ? tentu bisa jika menggunakan satu wadah lagi untuk pengganti sementara yaitu gelas C yang tidak berisi.

{ status awal ( IS / Inisial State ) : gelas A berisi minuman a, gelas B berisi minuman B
status akhir ( FS / Final State ) : gelas A berisi minuman b, gelas B berisi minuman A }
{ Dibutuhkan sebuah gelas kosong yaitu gelas C }
Algoritma
     Tuangkan minuman A ke gelas C  // Aksi 1
     Tuangkan minuman B ke gelas A  // Aksi 2
     Tuangkan minuman A ke gelas B  //Aksi 3

Penjelasannya sebagai berikut :

Loading...

Aksi 1
{IS : gelas A berisi minuman A, gelas C kosong}
Tuangkan minuman A ke gelas C
{FS : gelas A kosong, gelas C berisi minuman A }

Aksi 2
{IS : gelas A kosong, gelas B berisi minuman B }
Tuangkan minuman B ke gelas A
{FS : gelas A berisi minuman B, gelas B kosong }

Aksi 3
{IS : gelas B kosong, gelas C berisi minuman A }
Tuangkan minuman A ke gelas C
{FS : gelas B berisi minuman A, gelas C kosong, }

Contoh 2

Loading...

“ Misalkan terdapat sebuah atau sejumlah bola berwarna merah, kuning, hijau pada kotak A. Akan diambil secara acak sebuah bola dari kotak A dan dimasukkan ke kotak B yang kosong jika berwarna merah. “
Dari kasus diatas kita bisa pecahkan bahwasanya kita akan mengabil bola di dalam Kotak A apabila bola tersebut berwarna merah, jika buka warna merah berarti bola tersebut tak perlu di ambil.

{status awal: kotak A berisi sejumlah bola, kotak B kosong
status akhir: bola pada kotak A berkurang 1, kotak B kosong atau berisi sebuah bola merah}
Algoritma
Ambilkan 1 bola dari kotak A
if ( bola berwarna merah ) then
    Masukkan bola terambil ke Kotak B

Perhatikan pemilihan kondisi pada baris 5 dan 6 Skema pemilihan yang digunakan memiliki pola:


     if kondisi then
         aksi

Contoh 3

Masih sama kasus diatas namun apabila bola bukan berwarna merah masukkan ke kotak C.
Dari kasus diatas kita bisa pecahkan bahwasanya kita akan mengabil bola di dalam Kotak A apabila bola tersebut berwarna merah, jika buka warna merah berarti bola dimasukkan ke kotak C.

{ IS : kotak A berisi sejumlah bola, kotak B dan C kosong
FS : Bola pada kotak A berkurang 1, kotak B atau kotak C kosong atau berisi sebuah bola}
Algoritma
     Ambilkan 1 bola dari kotak A
     if ( bola berwarna merah ) then
          Masukkan bola terambil ke kotak B // aksi 1
     else
          Masukkan bola terambil ke kotak C // aksi 2

Perhatikan pemilihan kondisi pada baris ke-2. Skema pemilihan yang digunakan memiliki pola :


         if ( kondisi ) then    // jika kondisi true ( benar )
              aksi 1
         else
              aksi 2

kata “else” menunjukkan “jika tidak terpenuhi”. Pada contoh dia atas, jika tidak terpenuhi kondisi bola berwarna merah maka yang dilakukan adalah memasukkan bola ke kotak C.

Contoh 4

Kasus berikutnya “ Kita mempunyai 5 bola di kotak A dan kita mau memasukkan semua bola ke kotak B. “
Kasus tersebut bisa diatasi dengan cara memindahkan bola tersebut satu persatu ke kotak B sebanyak 5 kali.

{IS : kotak A berisi 5 bola, kotak B kosong
FS : kotak A kosong, kotak B berisi 5 bola}
Algoritma
     Ambil 1 bola dari kotak A
     Masukkan bola terambil ke kotak B
     Ambil 1 bola dari kotak A
     Masukkan bola terambil ke kotak B
     Ambil 1 bola dari kotak A
     Masukkan bola terambil ke kotak B
     Ambil 1 bola dari kotak A
     Masukkan bola terambil ke kotak B
     Ambil 1 bola dari kotak A
     Masukkan bola terambil ke kotak B

Namun cara diatas bisa di tangani lebih simpel lagi apabila kita menggunakan Perulangan sebagai berikut :

{IS: kotak A berisi 5 bola, kotak B kosong
FS : kotak A kosong, kotak B berisi 5 bola}
Algoritma
     repeat 5 times
          Ambil 1 bola dari kotak A
          Masukkan bola terambil ke kotak B

Pada algoritma di atas digunakan struktur:


     repeat n times  
          Aksi

dimana “n” adalah jumlah banyaknya perulangan yang akan diulangi.

Contoh 5

Bagaimana jika jumlah bola pada kotak A tidak diketahui ?

{ IS : kotak A berisi bola, kotak B kosong
FS : kotak A kosong, kotak B berisi bola }
Algoritma
     repeat
          Ambil 1 bola dari kotak A
          Masukkan bola terambil ke kotak B
     until ( kotak A kosong )

Perhatikan pemilihan kondisi pada baris 4 sampai 7. Skema pemilihan yang digunakan memiliki pola :


         repeat
             Aksi
         until

kata “repeat” diatas menunjukkan bahwasanya akan mengulangi Aksi sampai kata ” until “, jika until true maka berakhir perulangan di atas.

Contoh 6

Bagaimana jika kotak A KOSONG ?

 

{ IS : kotak A kosong atau berisi bola, kotak B kosong
FS : kotak A kosong, kotak B berisi bola atau tetap kosong}
Algoritma
     if ( kotak A tidak kosong ) then
          repeat
               Ambil 1 bola dari kotak A
               Masukkan bola terambil ke kotak B
          until ( kotak A kosong )

Skema pola Algoritma diatas adalah gabungan antara Contoh 2, 3 dengan 5.

Masih ada beberapa lagi skema perulangan, namun diatas adalah sekedar contoh untuk pemahaman dalam penegrtian Algoritma.

Latihan

Andi mempunyai 10 bola berwarna-warni , 3 bola berwarna merah, 4 bola berwarna kuning, dan 3 bola berwarna hijau di dalam satu kotak A. Ibu andi memberika 3 Kotak dan menyuruh untuk membedakan warna bola setiap kotaknya. Bantulah andi untuk memilih warna untuk setiap kotaknya yaitu Kotak B berisi bola warna Hijau semua, Kotak C berisi bola warna merah semua dan Kotak C berisi bola warna kuning semua.
Buatlah algoritma untuk kasus diatas dan jawab di kolom komentar !!!

 

Jika ada yang kurang paham bisa anda tanyakan dibawah dan jika ingin berdiskusi ataupun terdapat kesalahan silahkan di komentar.

source : Materi Dasar Algoritma dan Pemrograman Dosen FIF Telkom University

Related Post