Friday, March 18, 2016

Memulai Memahami Apa Itu Algoritma dan Pemrograman


Pemrograman sudah menjadi kegiatan yang sangat penting di era teknologi informasi. Program yang berjalan di komputer, baik itu komputer desktop, laptop, bahkan telpon genggam seperti android, ios dan lain sebagainya, tidak tercipta begitu saja tetapi ditulis melalui proses analisis dan percancangan yang sangat cermat dan sangat teliti. Sebuat program komputer pada dasarnya mengimplementasikan suatu algoritma. Dengan kata lain, algoritma adalah ide dibalik setiap program komputer apapun. Tetapi tahukah sahabat lotd apa itu Algoritma? apa itu program? jika tidak maka itu adalah alasan utama mengapa kita membuat artikel ini.

Pada artikel ini (terutama pada kategori artikel ini) kita akan mengupas tuntas mengenai pemrograman dan algoritma. Kami tidak akan memberikan pelajaran yang terkesan buru-buru, karena penjelasan algoritma ini harus dijelaskan pelan-pelan dan sangat detil karena jika tidak tentu kita akan kebingungan baik pembaca ataupun penulis sendiri, karena sayapun sama-sama dalam tahap belajar dalam pemrograman ini. Baik kita mulai.

Permasalahan pertama
Manusia hidup dengan segala masalah yang mengelilinginya. Hidup pada dasarnya adalah serangkaian aktivitas menyelesaikan masalah. Dalam Bahasa Indonesia, istilah yang sepadan pengertiannya dengan kata "masalah" adalah "persoalan". Dalam artikel ini kita tidak akan membedakan makna dari kedua istilah tersebut, oleh karena itu kita akan menggunakan kedua istilah tersebut secara bergantian, kadang kita sebut masalah dan kadang kita akan menyebutnya persoalan.

Contoh dari beberapa permasalahan (atau persoalan haha). Saya rasa ini terlalu sulit bagi kita menggunakan dua istilah secara bergantian, baik kita gunakan satu istilah saja yaitu permasalahan.

Contoh dari beberapa permasalahan sehari-hari misalnya:

  1. Adi diberikan setumpuk kartu pasien disebuah tempat praktek dokter yang tersusun dengan acark. Setiap kartu mempunyai nomer registrasi pasien. Permasalahannya adalah Bagaimana mengurutkan kartu tadi berdasarkan nomor urut yang tersusun dari nomer terkecil diatas nomor terbesar? maka jawaban dari permasalahan ini adalah barisan kartu pasien yang sudah tersusun dari nomer terkecil ke nomer terbesar. Bagaimana caranya? kita tentu memiliki cara masing-masing yang berbeda untuk mengurutkan nomer tersebut.
  2. Asep diberikan sebuah daftar yang berisi nama-nama mahasiswa baru yang diterima disebuah perguruan tinggi. Daftar tersebut hanya berisi nomor peserta ujian yang diterima. Carilah apakah seorang calon mahasiswa baru yang nomor perserta ujiannya diketahui terdapat di dalam daftar nomor tersebut? Jawaban dari permaslahan ini adalah "ya" jika nomor tersebut ditemukan dalam daftar dan "tidak" jika nomor tersebut tidak ditemukan dalam daftar yang diberikan pada asep.
  3. Diberikan daftar nama pejabat baru beserta jumlah kekayaannya. Tentukan pejabat mana yang mempunyai kekayaan paling besar? Jawaban dari permasalahan ini adalah nama pejabat yang mempunyai kekayaan paling besar.
Sudah dapat pengertian mengenai apa itu permasalahan dan apa itu jawaban dari sebuah permasalahan? Jika sudah Bagus! Anda bisa melanjutkan membaca. Jika belum silahkan baca berulang-ulang hingga Anda paham. 

Beberapa masalah yang muncul didalam dunia nyata banyak memiliki kemiripan subtansi. Misal masalah mengurutkan tumpukan kartu yang tersusun acak secara subtansi sama dengan masalah mengurutkan sekumpulan nilai ujian agar terurut menaik atau menurun. Begitu pula masalah mencari nama pejabat yang mempunyai kekayaan terbesar secara subtansi sama dengan masalah mencari nama siswa yang meraih nilai ujian nasional tertinggi. Oleh karena itu, secara generik kita sering mendeksripsikan masalah yang muncul didunia nyata dengan menggunakan beberapa ukuran(parameter), Misal sebagai berikut:
  1. [Masalah pengurutan] Diberikan sebuah senarai (list/ daftar) yang di simbolkan dengan S yang terdiri dari n buah bilangan bulat. Bagaimana mengurutkan  n  buah nilai tersebut sehingga terususun secara menaik?
  2. [Masalah Pencarian] Tentukan apakah suatu nilai x terdapat dalam sebuah list yang berisi n buah bilangan bulat!
  3. [Masalah Mencari elemen terbersar] Diberikan list S yang terdiri dari n buah nilai bilangan bulat. Carilah elemen terbesar di dalam senarai tersebut.
Sebagai contoh, jawaban tergadap masalah pengurutan adalah 

Sebleum terurut:
S= 15, 4, 8, 11, 2, 10, 19

Setelah terurut:
S= 2, 4, 8, 10, 11, 15, 19

Untuk masalah yang lain silahkan dicari jawabannya sendiri.

Kita memang belum membahas secara pasti apa itu pengertian Algoritma, tapi dari artikel ini Saya harap sahabat lotd dapat mendapat konsep dasar mengenai Algoritma. Untuk pengertian apa itu algoritma kita bisa mendapatkannya dipostingan berikutnya.  

1 comment:

  1. PokerStars Casino and Resort in Las Vegas - JSH Hub
    The poker room at Casino & Resort is a casual gaming spot with a 시흥 출장샵 modern 광양 출장샵 atmosphere where you can 대구광역 출장샵 get 충주 출장마사지 away without 제주도 출장마사지 spending any real money.

    ReplyDelete