BAB 1
Algoritma & Pemrograman
Kata ‘algoritma’ diturunkan dari nama belakang
seorang tokoh matematikawan Persia bernama Muhammad ibn Musa al-Khuwarizmi
(lahir tahun 730an, meninggal antara tahun 835 dan 850). Al-Khuwarizmi berasal
dari propinsi Khorasan di negara yang saat ini bernama Uzbekistan. Uni Soviet
menghormati jasa-jasa Al-Khuwarizmi dengan membuat gambar dirinya sebagai
perangko.
Algoritma merupakan metode umum yang digunakan
untuk menyelesaikan kasus-kasus tertentu [1]. Dalam menuliskan algoritma, dapat
digunakan bahasa natural atau menggunakan notasi matematika, sehingga masih
belum dapat dijalankan pada komputer.
Dalam kehidupan sehari-hari, kita sudah melakukan
penyusunan algoritma untuk menyelesaikan permasalahan atau tantangan yang
dihadapi. Sebagai contoh, pada saat diminta untuk membuat telur dadar. Sebelum
membuat algoritmanya, kita perlu mendefinisikan masukan (input) dan luaran
(output) terlebih dahulu, dimana input berupa telur mentah, dan output berupa
telur dadar yang sudah matang.
Susunan algoritmanya sebagai berikut:
1.
Nyalakan api kompor
2.
Tuangkan minyak ke dalam wajan
3.
Pecahkan telur ayam ke dalam mangkok
4.
Tambahkan garam secukupnya
5.
Aduk campuran telur dan garam
6.
Tuang adonan telur ke dalam wajan
7.
Masak telur hingga matang
Algoritma akan lebih baik jika ditulis secara
sistematis menggunakan beberapa skema, dalam buku ini akan dibahas mengenai
skema Flowchart dan Pseudocode.
Program adalah formulasi sebuah algoritma dalam
bentuk bahasa pemrograman[1], sehingga siap untuk dijalankan pada mesin
komputer. Membuat program seperti memberitahukan apa yang harus dilakukan
kepada orang lain. Sebagai contoh, pada saat kita memberitahukan algoritma
membuat telur dadar kepada orang lain, kita sudah melakukan pemrograman.
Pemrograman membuat telur dadar kepada orang lain
akan lebih mudah karena orang tersebut sudah mengetahui apa itu telur dadar.
Pada langkah yang ke-3 diminta untuk memecahkan telur, bagaimana cara orang
tersebut memecahkan telur tentunya sudah diketahui dan kita tidak perlu
menjelaskan terlalu detil.
Lain halnya jika kita harus menyuruh komputer
untuk melakukan apa yang kita inginkan. Komputer sebenarnya hanyalah sebuah
mesin bodoh yang tidak memiliki emosi dan kemampuan bersosialisasi. Oleh karena
itu, untuk membuatnya menjadi mudah, diperlukan penyusunan algoritma yang
benar.
Mendesain algoritma yang benar dan
menterjemahkannya ke dalam bahasa pemrograman bukanlah hal yang mudah karena
bahasa pemrograman memiliki tata penulisan sendiri.