Program komputer atau aplikasi pada smartphone telah menjadi bagian dari kehidupan sehari-hari. Kegiatan seperti pengiriman email, pencetakkan struk saat berbelanja di supermarket, berbelanja secara daring, atau mengirim pesan melalui aplikasi chatting di smartphone merupakan beberapa contoh bagaimana program komputer atau aplikasi terlibat dalam kehidupan sehari-hari.

Ilustrasi Algoritma

Program komputer dan aplikasi yang ada, tidak muncul begitu saja. Sebelum menjadi program komputer dan aplikasi utuh yang dapat dijalankan, diperlukan proses perancangan yang sistematis yang kemudian diimplementasikan ke dalam sebuah bahasa pemrograman tertentu (seperti C, C++, PHP atau Java).

Dalam proses perancangan program komputer dan aplikasi, pembuat program akan menentukan apa sajakah masukan yang diterima oleh program, bagaimana nantinya masukan tersebut diolah untuk menghasilkan keluaran yang diinginkan, dan bagaimana pengguna program dapat berinteraksi dengan program. Proses ini akan sangat menentukan bagaimana program tersebut nantinya.
Tahapan-tahapan yang sistematis tentang bagaimana jalannya suatu program dari awal sampai akhir disebut dengan algoritma. Untuk setiap aksi yang dilakukan oleh program komputer atau aplikasi dapat dipastikan memiliki algoritma. Sebagai contoh, algoritma fitur pencarian teks pada program pengolah kata adalah sebagai berikut:

  1. Memasukkan kata atau teks yang hendak dicari.
  2. Membandingkan teks yang dicari dari awal halaman sampai dengan akhir halaman.

  3. Jika ditemukan, highlight teks.
  4. Jika tidak ditemukan tampilkan “teks tidak berhasil ditemukan”.

Urut-urutan ini berlaku secara ketat. Jika urutan diubah, maka keluaran yang dihasilkan juga tidak akan sesuai dengan yang diinginkan.


Beberapa definisi algoritma antara lain:

  • Urutan langkah-langkah untuk memecahkan suatu masalah komputasi.
  • Deretan langkah-langkah komputasi yang mentransformasikan data masukan menjadi keluaran.
  • Deretan instruksi yang jelas untuk memecahkan masalah, yaitu untuk memperoleh keluaran yang diinginkan dari suatu masukan.

Secara umum, algoritma memiliki karakteristik sebagai berikut: memiliki langkah-langkah yang jelas, pasti dan dapat dijalankan; ditulis dalam bahasa formal, memiliki nilai awal atau nilai input; menghasilkan keluaran dan proses untuk berhenti.