Belajar Membuat Algoritma (Bagian ke-1)
Pengertian Algoritma
BPPTIK - Algoritma dapat didefinisikan sebagai urutan langkah logis tertentu dalam memecahkan masalah.
Sebuah algoritma terdiri dari sekumpulan instruksi, perintah, aksi, atau prosedur yang dikerjakan secara berurutan, dari yang pertama sampai yang terakhir, untuk mencapai suatu tujuan yang diinginkan.
Contoh: Bayangkan ada orang yang bertamu ke rumah Anda. Anda tidak memiliki makanan apa pun untuk disuguhkan kepada sang tamu, kecuali seekor ayam yang masih berkeliaran di halaman belakang. Karena tidak ada pilihan lain, Anda pun memutuskan untuk menghidangkan ayam tersebut kepada sang tamu. Algoritma untuk menghidangkan ayam dapat dideskripsikan sebagai berikut:
Tangkap ayam
Sembelih ayam
Bului ayam
Masak ayam
Hidangkan ayam pada tamu
Dengan menjalankan algoritma di atas, Anda dapat mencapai tujuan yang diinginkan, yaitu menghidangkan ayam kepada tamu.
Aksi
Algoritma di atas memiliki lima aksi, yaitu tangkap ayam, sembelih ayam, dan seterusnya. Setiap aksi dikerjakan sesuai dengan urutan aksi di atas. Algoritma tersebut tidak akan dapat dijalankan bila tidak dikerjakan dengan urutan seperti di atas. Misalnya, Anda tidak dapat menghidangkan ayam bila tidak memasaknya lebih dulu. Memasak ayam pun harus dilakukan setelah membului ayam tersebut, bukan sebelumnya. Setiap aksi memiliki kondisi awal (initial state) dan kondisi akhir (final state). Kondisi awal adalah kondisi yang harus dipenuhi sebelum aksi dilakukan, sedangkan kondisi akhir adalah kondisi yang harus dipenuhi setelah aksi dilakukan. Berikut ini contoh kondisi awal dan kondisi akhir masing-masing aksi di atas.
- Tangkap ayam
- Kondisi awal: ayam masih berkeliaran di halaman belakang
- Kondisi akhir: ayam tertangkap dalam keadaan hidup
- Sembelih ayam
- Kondisi awal: ayam masih hidup dan dalam keadaan tertangkap
- Kondisi akhir: ayam mati
- Bului ayam
- Kondisi awal: ayam sudah mati dan bulu-bulunya belum dicabuti
- Kondisi akhir: ayam sudah mati dan bulu-bulunya telah dicabuti
- Masak ayam
- Kondisi awal: ayam sudah mati, bulu-bulunya telah dicabuti dan belum dimasak
- Kondisi akhir: ayam sudah dimasak
- Hidangkan ayam kepada tamu
- Kondisi awal: ayam sudah masak dan belum dihidangkan
- Kondisi akhir: ayam dihidangkan kepada tamu