ALBORITMA DAN PEMROGRAMAN

Perangkat lunak (software) atau sering disebut juga program adalah suatu hasil eksekusi (instruksi) yang dapat berjalan pada komputer, berfungsi dengan benar, sanggup melayani segala kemungkinan masukan, instruksi dan manipulasi data serta kemampuan-kemampuan untuk melakukan suatu fungsi yang spesifik. Setiap software tidak sama dengan yang lain, mempunyai ciri-ciri tersendiri dan dapat digunakan untuk mengerjakan fungsi yang khusus.
Contoh jenis software antara lain software bahasa pemrograman, software aplikasi basis data (data base), software aplikasi desain web, software aplikasi grafis, software aplikasi multimedia dan lain-lain.
Software dibuat oleh pemrogram (programmer) yang bisa individu maupun tim. Pembuatan software berkaitan dengan software developer, yaitu sebuah software yang dapat digunakan untuk membangun program.
Mengingat banyaknya jenis software yang ada maka software developer juga bermacam-macam jenisnya, pemilihan jenis software developer apa yang akan digunakan untuk membangun sebuah program tergantung dari software seperti apa yang diinginkan pemrogram dan bagaimana desain dan rancangan programnya. Desain dan rancangan program dibuat untuk memudahkan pemrogram mengerjakan langkah-langkah dalam pemrograman karena dalam rancangan program sudah tertuang fungsi-fungsi apa saja yang dapat dilakukan, urutan proses, pengolahan dan manipulasi data. Pembuatan rancangan program harusmengacu pada kaidah algoritma pemrograman agar saat mengimplementasikan rancangan menjadi program atau software menjadi lebih mudah.
vDefinisi Algoritma
Algoritma adalah urutan langkah-langkah logis penyelesaian masalah yang disusun secara sistematis dan logis. Logis adalah hal yang pokok dalam algoritma, arti logis adalah masuk akal atau bisa diterima akal serta bisa ditentukan benar atau salahnya. Algoritma bukan hanya istilah dalam dunia komputer, melainkan semua proses pemecahan masalah dengan langkah-langkah yang sistematis merupakan algoritma, baik itu masalah kehidupan sehari-hari ataupun masalah lain yang tidak berkaitan dengan dunia komputer.
Algoritma pemrograman adalah urutan langkah-langkah logis untuk membangun sebuah program yang disusun secara sistematis. Langkah-langkah dalam membangun sebuah program berkaitan dengan desain dan rancangan program yang diinginkan pemrogram.
Pembuatan software berdasar kaidah algoritma pemrograman diidentifikasi dengan adanya masalah, nilai awal masalah, proses dan hasil yang diinginkan. Notasi algoritma yang dibuat harus dapat diimplementasikan dengan menggunakan berbagai software developer, analoginya adalah sebuah resep kue yang berisi langkah-langkah pembuatan kue, dapat ditulis ke dalam bahasa Indonesia, bahasa Inggris, bahasa Spanyol dan lain-lain. Orang Indonesia pasti memakai resep berbahasa Indonesia dan orang Inggris pasti memakai resep berbahasa Inggris, apabila langkah yang dikerjakan sama dengan langkah yang tertulis pada resepnya maka kue yang dibuat orang Indonesia dan kue yang dibuat orang Inggris hasilnya sama. Demikian pula pada pemrograman, intinya notasi-notasi algoritma harus jelas langkah-langkahnya supaya dapat diimplementasikan menggunakan berbagai jenis software developer.
vKarakteristik Algoritma
    Adapun Karakteristik algoritma  sebagai berikut:
    1. Algoritma tidak ambigu
        Deskripasi langkah-langkah  dalam algoritma harus dan hanya mempunyai tafsiran tunggal.
    2. Algoritma harus tepat (pricise)
        Algoritma harus menyatakan urutan langkah-langkahnya.
    3. Algoritma harus pasti (definite)
        Algoritma harus pasti, jika serangkaian langkah yang sama dilakukan dua kali maka hasilnya harus selalu sama.
    4. Algoritma harus berhingga (finite)
        Serangkaian langkah dalam algoritma harus dapat dilaksanakan pada rentang waktu tertentu.

vContoh Penyelesaian Masalah dengan Algoritma
Contoh berikut ini menunjukkan pemecahan masalah menggunakan algoritma, identifikasi masalahnya adalah ban sepeda motor kempes sehingga sepeda motor tidak bisa dipakai. Nilai awal adalah ban sepeda motor kempes dan hasil yang diinginkan adalah sepeda motor bisa dipakai, maka pada tahap proses dirancang langkah-langkah yang tersusun sistematis untuk mencapai hasil yang diinginkan sebagai berikut :
vLangkah     Proses yang dikerjakan
1     Membuka ban sepeda motor
2    Mengecek kebocoran ban
3    Jika tidak ada kebocoran, pasang ban kembali
4    Jika bocor, mengecek banyak tambalan pada ban
5    Jika tambalan ban lebih dari 4, ganti ban baru
6    Jika tambalan ban kurang dari atau sama dengan 4, lakukan tambal ban pada lokasi yang bocor
7    Pasang ban kembali
8    Lakukan pemompaan

Algoritma di atas digunakan untuk memecahkan permasalahan ban kempes agar memperoleh hasil sepeda motor bisa dipakai. Apabila dikembalikan kepada algoritma pemrograman maka setiap proses yang dikerjakan pada masing-masing langkah merupakan sebuah notasi algoritma.Pemakaian algoritma dalam pemrograman memberikan kemudahan bagi pemrogram dalam hal mengimplementasikan notasi algoritma menjadi software menggunakan software developer tertentu, serta dapat menghasilkan software yang baik. Ciri-ciri software yang baik adalah :
1.  Rancangan yang baik (metodologis dan sistematis)
2.Dapat dieksekusi dengan benar oleh komputer
3.Berfungsi dengan benar sesuai rancangan
4.Mampu melayani segala kemungkinan masukan
5.Tampilan yang menarik
6.Mudah dalam pemeliharaan dan pengembangan


Komentar