Seorang programmer biasanya
membuat program berdasarkan rancangan yang telah dibuat sebelumnya baik oleh
programmer itu sendiri maupun oleh seorang analis sistem. Jarang sekali orang
membuat program komputer tanpa merancangnya lebih dahulu apalagi bila masalah
yang ingin diselesaikan berskala besar dan rumit.
Ada 2 tahap yang biasanya dilakukan untuk
menyelesaikan masalah menggunakan program komputer:
- Tahap Perancangan Solusi
- Perumusan masalah, di antaranya
meliputi kegiatan untuk menentukan input, output dan proses yang
diperlukan untuk menghasilkan output.
- Tujuan tahap ini adalah menghasilkan algoritma yang handal untuk
menyelesaikan masalah.
- Algoritma adalah rangkaian terurut instruksi-instruksi yang disusun
untuk menyelesaikan suatu masalah.
- Penyusunan algoritma tidak selalu harus dilakukan (terutama untuk
masalah-masalah sederhana), tetapi sangat perlu untuk masalah-masalah yang
kompleks karena akan menghemat waktu dalam implementasi program pada tahap
berikutnya.
- Tahap Implementasi
- Tujuan dari tahap ini adalah menghasilkan program
yang dapat dijalankan oleh komputer dan mengarah ke penyelesaian masalah.
- Program adalah algoritma yang dinyatakan /
dikodekan menggunakan bahasa yang dapat dikenal oleh komputer.
ALGORITMA
Dalam kehidupan sehari-hari,
hampir setiap pekerjaan kita selesaikan menggunakan prosedur / aturan tertentu,
misalnya membuat minum, memasak mie instant, mengendarai motor, dsb. Prosedur
itu berisi langkah-langkah yang sudah tertentu urutannya. Berisi pula
langkah-langkah yang hanya dikerjakan bila memenuhi syarat tertentu dan ada
pula yang perlu diulang-ulang. Prosedur seperti itu dalam bidang matematika dan pemrograman komputer
disebut algoritma.
Algoritma adalah serangkaian
perintah yang mempunyai urutan langkah yang jelas, bukan sekedar sebuah
petunjuk atau rambu-rambu. Algoritma harus cukup rinci dan jelas dilihat dari
sisi agen yang akan melaksanakan algoritma tersebut.
Contoh: Algoritma mengganti lampu yang mati
Versi 1.
- Lepaskan lampu yang mati.
- Pasangkan lampu yang baru.
Versi 2.
- Ambil tangga dan letakkan di bawah lampu yang
mati.
- Ambil lampu baru dengan daya yang sama.
- Panjat tangga tersebut sampai lampu dapat diraih.
- Putar lampu dengan arah berlawanan putaran jarum
jam sampai terlepas dari soketnya.
- Tempatkan lampu baru pada soketnya.
- Putar lampu baru searah dengan putaran jarum jam.
- Turun dari tangga.
Versi 3.
- Posisikan tangga di bawah lampu yang mati.
- Ambil lampu pengganti.
- Jika daya dari lampu yang diambil tidak cocok
dengan daya lampu yang mati, maka ulangi langkah-langkah berikut sampai
lampu pengganti ditemukan:
- Kembalikan lampu yang telah diambil.
- Ambil lampu yang lain.
- Ulang langkah berikut hingga lampu dapat diraih:
Naik tangga satu langkah
- Ulang langkah berikut sampai lampu yang mati terlepas:
Putar lampu yang mati dengan arah berlawanan dengan
putaran jarum jam.
- Tempatkan lampu baru pada soketnya.
- Ulang langkah berikut sampai lampu yang baru
terpasang dengan aman:
Putar lampu yang baru searah dengan putaran jarum jam.
- Turun dari tangga.
Algoritma komputer yang baik memiliki sifat-sifat:
- Definiteness.
Setiap langkah harus didefinisikan dengan tepat dan
tidak menimbulkan makna ganda (ambigu).
- Effective.
Setiap langkah harus mengarah pada penyelesaian
masalah dalam waktu yang berhingga.
- Finiteness.
Seluruh rangkaian instruksi harus selesai dalam waktu
yang berhingga.
Tidak ada komentar:
Posting Komentar