Algoritma

Rabu, 26 Desember 2012
  1. 1.      Algoritma
Asal  usul  kata  algoritma  dapat  Anda  baca  dalam  buku  “The  Art  of  Computer Programming Second Edition Volume I” yang ditulis oleh Donald E. Knuth (1973, p1- )
Menurut  Donald  E.  Knuth  (1973,p4),  algoritma  dalam  penger tian  modern mempunyai kemiripan dengan istilah  resep ,  proses, metode, teknik, prosedur, rutin . Algor itma  adalah  sekumpulan  aturan-aturan  berhingga  yang  memberikan  sederetan operasi-operasi untuk menyelesaikan suatu jenis masalah yang khusus. Menurut  Rinaldi  Munir,  algoritma  adalah  urutan  langkah-langkah  logis penyelesaian masalah yang disusun secara sistematis. Berdasarkan dua pengertian algoritma di atas, dapat disimpulkan bahwa algor itma merupakan suatu istilah yang luas, yang tidak hanya berkaitan dengan dunia komputer.
  1. 2.      Pemrograman
Pemrograman berasal dar i kata  program  yang diberi awalan pe– dan akhiran –an. Dalam buku ini, program berarti progr am komputer. Pengertian   program   computer menurut John M. Zelle,  Ph.D.  dalam bukunya  yang  berjudul “Python  Programming: An  Introduction to  Computer  Science”  (2002,  p1)  adalah  sekumpulan  instruksi langkah per langkah yang member itahukan mengenai yang harus dilakukan computer secara  tepat.   Pemrograman   adalah  segala  kegiatan  pembuatan  program  computer.
Kemudian  terdapat  pula  istilah   bahasa  pemrograman   yang  berarti  bahasa  yang digunakan dalam pembuatan program komputer. Berdasarkan  pengertian  algor itma  dan  pemrograman,  maka  dapat  dikatakan bahwa  progr am  merupakan  hasil  penerapan  dari  algoritma- algoritma.  Akan  tetapi, dalam  buku  ini  tidak dibahas  materi  mengenai  pembuatan  program  komputer.  Buku ini  memfokuskan teknik-teknik pembuatan  algoritma  itu  sendir i.  Nama  mata  kuliah Algor itma dan Pemrogr aman dalam hal ini berarti mempelajari pembuatan algoritma- algoritma yang dapat diterapkan dalam pemrograman.

  1. B.     Tipe-tipe Algoritma Berdasarkan Format Penulisan
Algoritma  adalah  independen  terhadap  bahasa  pemr ograman  tertentu,  artinya algoritma  yang  telah  dibuat  tidak  boleh  hanya  dapat  diterapkan  pada  bahasa pemrograman  tertentu.  Penulisan  algoritma  tidak  ter ikat  pada  suatu  aturan  tertentu, tetapi harus jelas maksudnya untuk tiap langkah algoritmanya. Namun pada dasar nya algoritma dibagi menjadi beberapa macam berdasarkan for mat penulisannya, yaitu:
  1. 1.      Deskriptif
Algoritma  bertipe  deskr iptif  maksudnya  adalah  algoritma  yang  ditulis  dalam bahasa manusia sehari- hari (misalnya bahasa Indonesia atau bahasa Inggris) dan dalam bentuk  kalimat.  Setiap  langkah  algoritmanya  diterangkan  dalam  satu  atau  beberapa kalimat.
Sebagai contoh misalnya algoritma menentukan bilangan terbesar dari 3 bilangan berikut ini:
Algoritma Menentukan_bilangan_terbesar_dari_3_bilangan
  • Meminta input 3 bilangan dari user, misalkan bilangan a, b, dan c.
  • Apabila  bilangan  a  lebih besar  dari  b  maupun  c,  maka  bilangan  a merupakan bilangan terbesar.
  • Jika  tidak  (bilangan  a tidak  lebih  besar  dari  b  atau  c)  berarti bilangan  a  sudah  pasti  bukan  bilangan  terbesar.  Kemungkinannya tinggal  bilangan  b  atau  c.  Apabila  bilangan  b  lebih  besar  dari  c, maka  b  merupakan  bilangan  terbesar.  Sebaliknya  apabila  bilangan  b tidak lebih besar dari c, maka bilangan c merupakan yang terbesar.
  • Selesai.
  1. 2.      Flow Chart (Diagram Alir)
Selain dalam bentuk tulisan, algoritma juga dapat ditulis dalam  bentuk diagram- diagram dengan anak panah sebagai penunjuk urutan langkah algoritmanya. Algor itma yang ditulis dengan simbol-simbol demikian yang dinamakan  flow chart .
Mengenai  lambang- lambang  yang  digunakan  akan  dibahas  pada  bagian selanjutnya. Sekarang diberikan suatu contoh algoritma menentukan bilangan terbesar dar i 3 bilangan seperti yang dicontohkan sebelumnya, tetapi ditulis dalam bentuk flow chart.
  1. 3.      Pseudocode
Pseudo  berarti imitasi dan  code  ber arti kode yang dihubungkan dengan instruksi yang  ditulis  dalam  bahasa  komputer  (kode  bahasa  pemrograman).  Apabila diterjemahkan  secar a  bebas,  maka  pseudocode  berarti  tiruan  atau  imitasi  dari  kode bahasa pemrograman. Pada  dasarnya,  pseudocode  merupakan  suatu  bahasa  yang  memungkinkan programmer untuk berpikir terhadap per masalahan yang harus dipecahkan tanpa harus memikirkan   syntax   dar i  bahasa  pemrogr aman  yang  tertentu.  Tidak  ada  aturan penulisan   syntax   di  dalam  pseudocode.  Jadi  pseudocode  digunakan  untuk menggambarkan logika urut-urutan dari program tanpa memandang bagaimana bahasa pemrogramannya.
Walaupun pseudocode tidak ada aturan penulisan syntax, di dalam buku ini akan diberikan  suatu aturan-aturan  penulisan syntax yang cukup  seder hana  agar  pembaca dapat  lebih  mudah  dalam  mempelajari algoritma-algor itma  yang  ada  di  dalam  buku ini.  Pseudocode  yang  ditulis  di  dalam  buku  ini  akan  menyerupai  (meniru)  syntax- syntax dalam bahasa Pascal. Namun dibuat sesederhana mungkin sehingga tidak akan ada  kesulitan  bagi  pembaca  untuk  memahami  algoritma- algor itma  dalam  buku  ini walaupun pembaca belum pernah mempelajar i bahasa Pascal.
Contoh  algoritma  menentukan  bilangan  terbesar  dar i  tiga  bilangan  yang  ditulis dalam bentuk pseudocode bergaya buku ini.

01|    ALGORITMA Menentukan_terbesar_dari_3_bilangan
02|    Deklarasi:
03|    a,b,c, terbesar : integer
04|
05|    Deskripsi:
06|      Read(a,b,c)
07|      If (a>b) and (a>c) then
08|          Terbesar     a
09|      Else
10|          If b>c then
11|             Terbesar   b
12|          Else
13|             Terbesar     c
14|          Endif
15|      Endif
16|      Write(terbesar)

  1. C.    Flow Chart (Diagram Alir)
  2. 1.      Pengertian
Diagram alir atau flow chart adalah suatu bagan yang menggambarkan arus logika dar i data  yang akan dipr oses dalam suatu program dari awal sampai  akhir. Diagram alir terdiri dar i simbol-simbol yang mewakili fungsi-fungsi langkah program dan garis alir (flow lines)  menunjukkan urutan dari simbol-simbol yang akan diker jakan.
  1. 2.      Simbol-simbol Flow Chart
    1. Simbol terminal (terminator )




digunakan untuk menunjukkan awal dan akhir algoritma
  1. Simbol persiapan (preparation)




digunakan untuk memberikan nilai awal suatu variabel atau suatu counter
  1. Simbol proses (process)




digunakan  untuk  proses  perhitungan  aritmatika  atau  proses pemindahan data
  1. Simbol Data (data)



digunakan  untuk  menunjukkan  proses  input  maupun  output data.

  1. Simbol Keputusan (decision)



digunakan  untuk  pengambilan  keputusan  dua  jalur  atau  lebih dalam flow chart.
  1. Simbol Penghubung (on-page refer ence)


digunakan untuk  menunjukkan  hubungan  arus  flow chart  yang terputus, tetapi masih dalam halaman yang sama.
  1. Simbol Penghubung Halaman Lain (off- page reference)



digunakan untuk menunjukkan hubungan arus flow chart yang terputus yang berada di halaman lain.


  1. 3.      Bentuk-bentuk Dasar Struktur Logika Flow Chart
    1. Runtunan (Sequence Structure)



  1. Pemilihan/Percabangan IF (Selection Structure)



  1. Pengulangan FOR (FOR Loop Structur e)

Tidak ada komentar: