Algoritma dan Pemrograman


A. Pengertian Algoritma dan Pemrograman
Algoritma adalah serangkaian langkah-langkah yang tepat, terperinci, dan terbatas untuk menyelesaikan suatu masalah. Langkah yang tepat artinya serangkaian langkah tersebut selalu benar untuk menyelesaikan masalah yang diberikan. Langkah yang tidak memberikan hasil yang benar untuk domain masalah yang diberikan bukanlah sebuah algoritma.
Langkah yang terperinci artinya setiap langkah diberikan secara detail dan dapat dieksekusi oleh komputer, instruksi seperti “angkat sedikit ke kiri” merupakan contoh instruksi yang tidak tepat, karena “sedikit” tidak menyatakan sesuatu dengan tepat.
Baca selengkapnya ...
Langkah yang diberikan harus terbatas, artinya suatu saat langkah harus berhenti, jika langkah tidak pernah berhenti (misalnya: “ambil air, masukkan ke bak mandi, ulangi ambil air, dan seterusnya”) maka serangkaian langkah itu tidak disebut sebagai algoritma (jika: “ambil air, masukkan ke bak mandi, ulangi ambil air sampai bak mandi penuh”, maka bisa disebut algoritma, namun langkah ambil air, masukkan ke bak mandi, harus diperinci dan dapat dieksekusi oleh mesin).
Menurut  Donald  E.  Knuth  (1973,p4),  algoritma  dalam  pengertian  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 pengertian-pengertian algoritma di atas, dapat disimpulkan bahwa algoritma merupakan suatu istilah yang luas, yang tidak hanya berkaitan dengan dunia komputer.

Sedangkan arti program menurut Kamus Komputer dan Teknologi Informasi  tersebut dapat diartikan sebagai rangkaian kegiatan atau perintah untuk dieksekusi oleh komputer. Kemudian dijelaskan lebih lanjut bahwa: Program merupakan kumpulan instruction set yang akan dijalankan oleh pemroses, yaitu berupa software. Bagaimana sebuah sistem komputer berpikir diatur oleh program ini. Program inilah yang mengendalikan semua aktifitas yang ada pada pemroses. Program berisi konstruksi logika yang dibuat oleh manusia, dan sudah diterjemahkan ke dalam bahasa mesin sesuai dengan format yang ada pada instruction set.
Pemrograman berasal dari kata  program  yang diberi awalan pe– dan akhiran –an. 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.

Dari pengertian algoritma dan pengertian program tersebut maka dapat diambil kesimpulan bahwa: Algoritma Pemrograman merupakan langkah-langkah tersetruktur yang tepat dan terperinci yang digunakan untuk menyelesaikan sebuah masalah dalam proses perancangan sebuah program komputer, dimana penyajian langkah-langkah tersebut disesuaikan dengan pemroses (software) yang digunakan perancang program.

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.      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.

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.
  
 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.


Algoritma dan pemrograman merupakan satu kesatuan kalimat yang kadang menjadi nama sebuah mata kuliah di perguruan tinggi atau mata pelajaran di sekolah menengah yang memiliki kompetensi di bidang teknologi informasi. Tata cara pembuat program dengan menggunakan komputer secara baik dan benar diharuskan melalui mekanisme pembuatan algoritma-nya terlebih dahulu. Definisi algoritma sendiri disebutkan  sebagai urutan dari sebuah langkah untuk menyelesaikan sebuah permasalahan dengan menggunakan komputer, langkah-langkah yang tertulis menggunakan bahasa pemrograman tertentu akan diterjemahkan dari awal hingga akhir. Mengapa harus diterjemahkan? Hal ini disebabkan bahwa algoritma dibuat dengan menggunakan bahasa yang mudah dipahami manusia, padahal jalannya sebuah algoritma dalam bentuk sebuah aplikasi atau program membutuhkan sebuah komputer.
Algoritma terdiri dari 2 jenis, tetapi ada yang mengatakan 3 jenis. Pertama, bentuk dan tulisan algoritma menggunakan bahasa narasi.  Contoh : Mencari luas sebuah segitiga siku-siku, memiliki algoritma narasi :
1.                        Mulai
2.                        Masukan alas (a) dan tinggi segitiga (t)
3.                        Luas segitiga = a x t x 0.5
4.                        Tampilkan luas
5.                        Selesai
Kelima baris diatas merupakan algoritma narasi yang digunakan untuk mencari luas segitiga ditulis dengan urutan dalam menyelsaikan sebuah rumus mencari luas segitiga. Algoritma kedua, ditulis dengan menggunakan bahasa gambar (diagram) yang dikenal sebagai flowchart diagram algorithm. Masih dengan contoh mencari luas segitiga diatas, gambar berikut akan menunjukan algoritma dalam bentuk flowchart. Algoritma yang ketiga masih dalam perdebatan, yaitu antara yang mengatakan itu merupakan sebuah algoritma yang dikenal dengan nama pseucode, tetapi tidak sedikit yang mengatakan bahwa itu merupakan program komputer yang ditulis dengan menggunakan bahasa pemrograman tingkat tinggi. Contoh:

Pemrograman C/C++ [1] : Dasar- dasar Bahasa Pemrograman C++
C++ merupakan bahasa pemrograman dengan dialek yang berbeda banyak, seperti halnya bahasa manusia ( Bahasa Inggris dialek Amerika atau Inggris ) sangat berbeda. Dalam C++, dialek tidak disebabkan oleh perbedaan wilayah pemakai bahasa tertentu, seperti halnya bahasa Inggris, tetapi perbedaan compiler. Ada empat compiler yang paling banyak digunakan : Borland C++, Microsoft Visual C++, Watcom C/386 dan DJGPP.

Setiap compiler dari empat compiler yang terkenal didunia ini masing-masing berbeda antara satu dengan lainnya, compiler satu mendukung fungsi standard C++ ANSI/ ISO, tetapi yang lainnya tidak. Perbedaan ini kadang menimbulkan masalah jika kita akan meng-compile source code C++ yang dibuat programmer lainnya pada compiler yang berbeda.
C++ merupakan bahasa pemrograman yang berbeda dengan bahasa pemrograman yang lainnya. Untuk compiler C++ yang dijalankan pada sistem operasi DOS, mempunyai keywords ( kata kunci ) yang lebih kecil, keywords sendiri dapat mengurangi fungsi input atau output. Hampir semua fungsi yang berguna dalam file library yang dapat diakses dengan memasukannya sebagai file header ( *.h)
 #include adalah preprocessor yang memberitahukan kepada compiler untuk mengambil code dari file header iostream.h ke dalam program. Dengan memasukan file header, anda mengakses untuk fungsi yang berbeda. Contoh, fungsi cout akan dapat dijalankan jika kitamemasukan file header iostream.h.
Baris yang tidak kalah pentingnya dalam program adlah int main ( ). Baris ini memberitahukan ke compiler bahwa fungsi bernama main yang memiliki nilai balik. Listing program yang akan di-compile berda pada blok yang menggunakan tanda {………}, kalau di Pascal menggunakan begin dan end. Baris selanjutnya didalam listing program latihan1 terlihat kokoh. Jika kamu pernah belajar bahasa pemrograman yang lainnya, akan menemukan perbedaan jika print atau fprintf atau write digantikan cout<<, yang dikenal sebagai simbol operator masukan.
Komentar sangat dibutuhkan dalam pembuatan program, ini akan mempermudah orang lain untu memahami maksud dari programmer. Dalam bahasa C atau C++ komentar tidak akan ikut di eksekusi atau di compile jika diberi tanda // atau /*………………..*/ .
Untuk membuat program yang dapat dinputkan sesuatu kedalam listing program, contoh kalau di pascal menggunakan read atau readln, atau kalau di C menggunakan scanf, maka di dalam bahasa C++ menggunakan fung cin yang diikuti operator masukan >>. Untuk meanmpung statement input ini dibutuhkan penampung yang dikenal sebagai variabel. Jika anda menggunakan variabel maka anda harus memutuskan type datanya seperti ap. Dalam C++ ada beberapa tipe data antara lain char, int, dan float.

Comments

Popular posts from this blog

Seputar Mesin Blowing

Proses Pembuatan Pulp secara Mekanik dan Kimiawi

Studi Kasus Kepemimpinan