Algoritma episode 1

PROGRAM KOMPUTER

Program komputer adalah rangkaian kata perintah yang telah dimengerti oleh komputer untuk dikerjakannya. Kata-kata perintah tersebut membentuk suatu bahasa yang disebut dengan bahasa pemrograman. Sebagaimana bahasa pada manusia, bahasa pemrograman juga terdiri atas banyak macam bahasa, dan memiliki aturannya masing-masing. Sulitnya, komputer saat ini belum diberi hak inisiatif, sehingga jika ada sedikit saja kesalahan penulisan perintah oleh pemrogram, ia tidak mau memakluminya atau berusaha memperbaiki sendiri kesalahan tersebut. Serta merta ia “ngambek” dan tidak mau mengerjakan perintah-perintah lainnya. Komputer diciptakan melalui logika manusia, karenanya, ia bekerja secara logis, tanpa campur-tangan “perasaan.”

ALGORITMA PEMROGRAMAN

Orang yang telah terbiasa “bergaul” dengan komputer menggunakan satu bahasa pemrograman tertentu (tingkat mahir), biasanya tidak lagi memerlukan kertas coret-coretan untuk membuat suatu program komputer. Namun bagi pemula, pembelajar, atau yang belum mahir, diperlukan kertas coret-coretan tersebut.

Kertas coret-coretan itu akan digunakan untuk menyusun algoritma (langkah-langkah penyelesaian masalah), flowcharting (alur logika perintah, yang merupakan aplikasi dari algoritma), maupun menuliskan perintah sesuai dengan kaidah dari bahasa pemrograman yang akan digunakannya. Sewaktu menyusun algoritma, kita tidak perlu tahu (atau tidak perlu menyesuaikan dengan) bahasa pemrograman yang nanti akan kita gunakan. Hal utama yang kita pikirkan adalah kaidah (hirarki) dari komputer itu sendiri,yaitu input-proses-output. Input adalah data yang harus ada (sudah ada/ sudah tersedia), yang dapat diproses dengan aturan-aturan tertentu untuk menghasilkan output seperti yang dikehendaki. Data yang ada harus logis (masuk akal) bahwa “ia” dapat diproses untuk menghasilkan output.

Terdapat beberapa definisi lain algoritma tetapi pada prinsipnya memiliki pengertian yang sama, yang kita kutip sebagai literature antara lain :

  1. Algoritma adalah : Deretan lngkah – langkah komputasi yang mentransformasikan data masukan menjadi data keluaran
  2. Algoritma adalah : Deretan instruksi yang jelas untuk memecahkan masalah, yaitu untuk memperolah keluaran yang diinginkan dari suatu masukan dalam jumlah waktu yang terbatas
  3. Algoritma adalah :  Prosedur komputasi yang terdefinisi dengan baik yang menggunakan beberapa nilai sebagai masukan dan menghasilkan beberapa nilai yang disebut keluaran, jadi algoritma adalah : deratan langkah – langkah komputasi yang mentransformasikan masukan menjadi keluaran.

Dalam kehidupan sehari – hari kita banyak menemukan langkah – langkah pengerjaan sesuatu meskipun kita tidak menyebutnya sebagai algoritma, contohnya resep membuat masakan  :

  • Tuangkan satu gelas santan ke dalam penggorengan
  • Masukan bumbu – bumbu  yang sudah dihaluskan, aduk hingga merata
  • Tambahkan garam, merica, dan kecap manis
  • Masak dengan api sedang sambil diaduk
  • Angkat bila sudah tercium aroma harum

Misalkan ada dua buah ember yang berisi air yang berwarna, ember A berisi air yang berwarna merah dan ember B berisi air yang berwarna biru, volume air didalam kedua ember adalah sama bagaimana mempertukarkan isi kedua ember itu sedemikian rupa sehingga nantinya ember A akan berisi air yang berwarna Biru, dan ember B berisi air yang berwarna Merah??

Penyelesian :

Kita tidak bisa langsung mempertukarkan air didalam kedua ember tadi begitu saja sebab cara seperti itu menyebabkan terjadinya percampuran. agar bisa dipertukarkan, kita memerlukan sebuah ember tambahan sebagai tempat penanganan sementara, misalkan tambahan tersebut adalah ember C, dengan menggunakan ember C ini, algoritma pertukaran isi kedua buah ember adalah sebagai berikut :

ALGORITMA mempertukarkan isi dua buah ember, A dan B

  1. Tuangkan air dari ember A ke dalam ember C
  2. Tuangkan air dari ember B ke dalam ember A
  3. Tuangkan air dari ember C ke dalam ember B

Masih soal ember 🙂 didalam literatur klasik terdapat persoalan yang dinamakan Water Jug Problem, misalkan anda mepunyai dua buah ember yang masing masing bervolume 5 liter air dan 3 liter air, anda diminta mendapatkan air (dari sebuah danau) sebayak 4 liter air dengan bantuan hanya dengan kedua buah ember tersebut(tidak ada peralatan bantuan lain yang tersedia, hanya kedua buah ember tersebut !!!), terserah menggunakan cara yang ada, anda boleh membuang seluruhnya, mengisi penuh kembali atau apapun, dengan satu syarat anda tidak diperbolehkan hanya dengan mengira – ngira, harus dengan menggunakan hitungan atau langkah yang pasti, buatlah algoritmanya??

Penyelesian :

ALGORITMA Mendapatkan air 4 liter dari dua buah ember bervolume 5 dan 3 liter

  1. Isi penuh ember 3 liter dengan air (ember 3 liter berisi 3 liter air)
  2. Tuangkan air dari ember 3 liter ke dalam ember air 5 liter (ember 5 liter,sekarang berisi 3 liter air)
  3. Isi penuh kembali ember ember 3 liter dengan air (ember 3 liter berisi 3 liter air)
  4. tuangkan air dari ember 3 liter kedalam ember 5 liter hingga penuh (di dalam ember 3 liter sekarang tersisa 1 liter air)
  5. Buang seluruh air dari ember 5 liter air (ember 5 liter kosong)
  6. tuangkan air dari ember 3 liter(yang tersisa 1 liter tadi) kedalam ember 5 liter (ember 5 liter sekarang berisi 1 liter air, ember 3 liter kosong)
  7. Isi penuh ember 3 liter dengan air (ember 3 liter berisi air 3 liter)
  8. Tuangkan air dari ember 3 liter ke dalam ember 5 liter (ember 5 liter sekarang berisi 1 + 3 = 4 liter air)

TUGAS LOGIKA ALGORITMA :

  1. Misalkan terdapat dua buah ember, masing – masing mempunyai volume 5 liter air dan 3 liter air. tuliskanalgoritma untuk memperoleh air sebanyak 1 liter dengan hanya menggunakan kedua ember tersebut ?
  2. Tiga buah cakram yang masing – masing berdiameter berbeda mempunyai lubang di titik pusatnya. ketiga cakram tersebut yang berdiameter lebih besar selalu terletak di bawah cakram yang berdiameter lebih kecil. Tulislah algoritma untuk memindahkan seluruh cakram tersebut ke batang besi B, setiap kali hanya satu cakram yang boleh dipindahkan, tetapi pada setiap perpindahan tidak boleh ada cakram yang lebih besar diatas  cakram kecil. Batang besi C dapat dipakai sebagai tempat peralihan dengan tetap memegang aturan yang telah disebutkan.
  3. Tiga buah cakram

    Cakram

  4. Kerjakan Tugas Games Logika Ini:

Bantulah ketiga biksu dan kanibal yang akan menyebrangi sungai dengan perahu, dengan syarat jumlah kanibal tidak boleh lebih banyak dari jumlah biksu di kedua sisi sungai, jika hal itu terjadi para kanibal akan memakan para biksu !!!!

Ketika ketiga Ayah dan Anak perempuanya berjalan – jalan,  mereka tiba disebuah sungai kecil, bantulah ketiga Ayah dan Anaknya  untuk menyebrangi sungai dengan perahu, dengan syarat anak perempuannya tidak boleh bersama dengan selain ayahnya, baik di kedua sisi sungai ataupun pada saat di perahu, jika hal tersebut terjadi maka anak perempuannya akan kabur melarikan diri !!!!!!

Tugas perorangan, Jawaban dikirimkan ke email : gienandjar@gmail.com dengan mencantumkan :

  • Judul email : Tugas Algoritma
  • Isi email :
  1. Nama dan kelas
  2. Jawaban dari tugas

Tugas paling lambat diterima seminggu setelah tugas ini diberikan.

~ oleh gienandjar pada 28 Januari 2011.

Tinggalkan komentar