Hidup dengan Algoritma

Sebagian dari kita mungkin sedikit asing dengan kata ini. Apa itu algoritma? Tanpa kita sadari, sebenarnya kita selalu menerapkan algoritma untuk melakukan suatu kegiatan dalam kehidupan sehari-hari. Bahkan kegiatan sekecil apapun kita tidak akan pernah lepas dari algoritma. Singkatnya, algoritma adalah suatu urutan atau langkah dalam menyelesaikan suatu permasalahan.

Mudahnya mari kita berandai-andai seperti demikian :
Misal kita ingin meminum segelas air yang ada di dispenser. Maka algoritma yang sering kita terapkan mungkin mendekati seperti ini :

1. Ambil gelas di rak yang berada di dapur
2. Bawa gelas tersebut dan letakkan dibawah keran dispenser.
3. Tekan kenop keran hingga air mengisi gelas
4. Tunggu hingga gelas penuh terisi air atau sesuai jumlah air yang diinginkan, hentikan kenop keran
5. Angkat gelas dari bawah keran
6. Selesai

Lihat, kegiatan yang sepele namun kita gunakan algoritma untuk memecahkannya. Setiap orang memiliki pola pikir yang berbeda, demikian juga dengan algoritma, tiap orang tidak akan mungkin sama. Yang ada hanya mirip antara satu sama lain. Algoritma diatas bisa juga dikembangkan, bagaimana jika air tidak keluar dari keran dispenser? Maka bisa saja berkembang seperti berikut :

1. Ambil gelas di rak yang berada di dapur
2. Bawa gelas tersebut dan letakkan dibawah keran dispenser.
3. Tekan kenop keran hingga air mengisi gelas
4. Jika :
– air tidak keluar dari keran, jalankan langkah nomor 5.
– air keluar, jalankan langkah nomor 7.
5. Cek apakah galon masih berisi air :
– jika tidak, jalankan langkah nomor 6
– jika ya, periksa keran dispenser, ulangi langkah nomor 3
6. Ganti galon kosong dengan galon yang masih berisi air, kemudian ulangi langkah nomor 3
7. Tunggu hingga gelas penuh terisi air atau sesuai jumlah air yang diinginkan, hentikan kenop keran
8. Angkat gelas dari bawah keran
9. Selesai

Dari algoritma diatas, apakah masih bisa dikembangkan lagi? Tentu saja. Lihat poin nomor 6, mengganti galon air tentu saja ada algoritmanya tersendiri. Nah kemudian bagaimana kira2 algoritma jika kita ingin air minum hangat?🙂

Oh ya, tidak ada algoritma yang benar maupun salah. Asal tujuan tercapai, maka algoritma tersebut dinilai tepat dan dapat digunakan. Tentu saja, algoritma yang paling baik adalah yang paling efisien dan tidak merugikan atau menimbulkan masalah lain. Algoritma juga tidak boleh buntu, alias tidak ada pemecahannya, atau bahkan algoritma yang berputar-putar tanpa henti (infinite loop) coba amati algoritma berikut :

1. Ambil gagang telepon
2. Tekan nomor telepon yang akan dituju
3. Tunggu hingga terdengar nada sambung
4. Jika :
– panggilan dijawab, jalankan langkah nomor 5
– panggilan tidak dijawab, ulangi langkah nomor 2
5. Mulai berbicara
6. Selesai berbicara, letakkan gagang telepon di tempat semula
7. Selesai.

Algoritma apakah diatas? Ya benar, algoritma untuk melakukan komunikasi melalui telepon. Namun coba lihat poin nomor 4, pilihan yang kedua :
– Jika panggilan tidak dijawab, ulangi langkah nomor 2
Sekilas nampak masuk akal. Namun apa yang terjadi jika panggilan tidak juga dijawab? Kita akan terus menerus mengulang langkah nomor 2 -> 3 -> 4 -> 2 -> 3 -> 4 -> … tanpa henti. Itulah yang disebut infinite loop. Sebagai manusia yang berakal tidak mungkin kita akan melakukannya. Kecuali emang lagi pengen iseng ngga ada kerjaan lain😀

Lalu bagaimana sebaiknya?

1. Ambil gagang telepon
2. Tekan nomor telepon yang akan dituju
3. Tunggu hingga terdengar nada sambung
4. Jika :
– panggilan dijawab, jalankan langkah nomor 6
– panggilan tidak dijawab, jalankan langkah nomor 5
5. Jika :
– masih ingin mencoba melakukan panggilan ulang, jalankan langkah nomor 2
– tidak ingin mencoba melakukan panggilan ulang, jalankan langkah nomor 7
6. Lakukan percakapan hingga selesai
7. Letakkan gagang telepon di tempat semula
8. Selesai.

Nah, tidak hanya programmer dan matematikawan yang selalu bergelut dengan algoritma. Otak kita yang canggih selalu memikirkan algoritma-algoritma kompleks tanpa kita sadari. Algoritma tiap orang dipengaruhi juga oleh pengalaman, wawasan dan bahkan gaya hidup. Belajar pemrograman bisa membuat kita berpikir secara sistematis dan efisien, karena dalam dunia pemrograman komputer, setiap perintah atau baris-baris kode harus didasarkan pada algoritma-algoritma. Kita dihadapkan pada sesuatu yang maya, yang tak nampak, oleh karena itu otak kita dibiasakan menyusun algoritma baru dengan pertimbangan-pertimbangan yang kritis. Mengapa kritis? karena selain maya, komputer tak mengenal kompromi. Salah dalam menetapkan langkah, maka kita tidak akan mendapatkan hasil yang diinginkan. Banyak programmer yang pintar menghapal dan mengingat kode-kode program, namun seringkali salah dalam menerapkan algoritma.

Apakah pemrograman menakutkan? Justru disitu tantangannya. Mengasyikkan bermain-main dengan algoritma dan logika, apalagi kita berkuasa penuh atas komputer yang kita “kendalikan”. Sekali kita berhasil menyelesaikan suatu masalah, maka tak ada lain selain kepuasan yang akan kita dapatkan.

Wah jadi ngelantur nih…hehehe…yah..tulisan ini bukan buat ngajak semua orang buat jadi programmer kok😀 Hanya agar kita tahu bahwa hidup ini tak pernah lepas dari algoritma. Saking pentingnya bahkan jadi mata kuliah tersendiri di banyak jurusan teknik, ex : Teknik Informatika, Teknik Elektro, dan lain-lain. Mungkin perlu juga dimasukkan dalam kurikulum sekolah🙂

I'm a wanderer of the seven kingdoms.

Tagged with: , ,
Posted in Pemrograman, Sekitar Kita
7 comments on “Hidup dengan Algoritma
  1. redesya says:

    Wah, betul sekali tuh… Sama persis dengan pemikiran saya…, dalam hidup kita tak akan pernah lepas dgn algoritma dan logika…

  2. renxe says:

    iya, sangat benar sekali..bahkan ngetik keyboard buat bales comment nya rara ini jg perlu algoritma😀

  3. oman says:

    lam kenal..wa mu tanya ney sputar algoritma..ada trik2 khusus ga sey??biar kita bs paham..di kampus wa plajaran pling nge bete in ney…tpi itu mata kul utama..tolong ksh inpo na lewat e mail wa ajah ya??tengkiyu

  4. renxe says:

    trik khusus algoritma, ga ada sih kynya…anggep aja main puzzle, n putar balik logika buat cari penyelesaiannya😀

  5. gak salah klo programmer biasanya orang2 yang unique…karena otaknya selalu bekerja merender setiap informasi yang muncul di otaknya🙂

    bos bisa bikin algoritma yang jitu buat cari calon istri gak ? dengan 1001 kemungkinan yahhh….hehehe

  6. RenXe says:

    waduh kalo ada algoritma ky gini seh udah dari dulu sy terapkan😀
    tp yg jelas system requirementnya mungkin ky gini :
    – mapan
    – dewasa
    – baik akal budi n pekerti
    😀😀

  7. Abdul Rochman Raharjo says:

    betul sekali… dan ternyata kehidupan dan program nggak ada bedanya, sampai yang rumit sekalipun. Terdiri dari masukan, (proses &/ kondisi &/ perulangan) dan keluaran.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

Welcome!
Hi! My name is Ridwan. This is my blog, I hope you enjoy it. You can also find me there:



Use Google Chrome
Community




Tugupahlawan - Komunitas Blogger Surabaya

Persatuan Pelajar Indonesia di Jepang
Archives
Follow Xrismantos on WordPress.com
%d bloggers like this: