Langsung ke konten utama

Definisi Alogaritma


Dalam matematika dan komputasi, Algoritma atau Algoritme merupakan kumpulan perintah untuk menyelesaikan suatu masalah. Perintah perintah ini dapat diterjemahkan secara bertahap dari awal hingga akhir.  Masalah tersebut dapat berupa apa saja,  dengan catatan untuk setiap masalah,  ada criteria kondisi awal  yang  harus dipenuhi sebelum menjalankan Algoritma. Algoritma akan dapat selalu berakhir untuk semua kondisi awal yang memenuhi kriteria.

 Algoritma sering mempunyai langkah pengulangan (iterasi) atau memerlukan keputusan (logika Boolean dan perbandingan) sampai tugasnya selesai.  Algoritma secara sederhana dapat diartikan sebagai urutan langkah-langkah logis untuk menyelesaikan masalah yang disusun secara sistematis. Misalkan saja “Algoritma aktifitas pagi hari ini sebelum berangkat kuliah” yaitu (1) turun dari tempat tidur,(2) mandi,(3) berpakaian,(4) makan pagi, (5) pergi kuliah. Jadi perlu diingat bahwa Algoritma tidak hanya diterapkan pada dunia komputasi, tetapi juga Algoritma diterapkan dalam kehidupan sehari-hari.

Terdapat beragam klasifikasi Algoritma dan setiap klasifikasi mempunyai alas an tersendiri.Salah satu cara untuk melakukan klasifikasi jenis-jenis Algoritma adalah dengan memperhatikan paradigma dan metode yang digunakan untuk mendesain Algoritma tersebut. Beberapa paradigma yang digunakan dalam menyusun suatu Algoritma akan dipaparkan dibagian ini. Masing-masing paradigm dapat digunakan dalam banyak Algoritma yang berbeda.

ADivide and Conquer, paradigm untuk membagi suatu permasalahan besar menjadi permasalahan-permasalahan yang lebih kecil. Pembagian masalah ini dilakukan terus menerus sampai ditemukan bagian masalah kecil yang mudah untuk dipecahkan. Singkatnya menyelesaikan keseluruhan masalah dengan membagi masalah besar dan kemudian memecahkan permasalahan-permasalahan kecil yang terbentuk.

BDynamic programming, paradigm pemrograman dinamika akan sesuai jika digunakan pada suatu masalah yang mengandung sub-struktur yang optimal dan mengandung beberapa bagian permasalahan yang tumpang tindih . Paradigma ini sekilas terlihat mirip dengan paradigma Divide and Conquer, sama-sama mencoba untuk membagi permasalahan menjadi sub permasalahan yang lebih kecil, tapi secara intrinsic ada perbedaan dari karakter permasalahan yang dihadapi.

C. Metode Serakah. Sebuah Algoritma serakah mirip dengan sebuah Pemrograman dinamik, bedanya jawaban dari sub masalah tidak perlu diketahui dalam setiap tahap dan menggunakan pilihan "serakah" apa yang dilihat terbaik pada saat itu.

D. Kompleksitas dari suatu Algoritma merupakan ukuran seberapa banyak komputasi yang dibutuhkan Algoritma tersebut untuk menyelesaikan masalah. Secara informal, Algoritma yang dapat menyelesaikan suatu permasalahan dalam waktu yang singkat memiliki kompleksitas yang rendah, sementara Algoritma yang membutuhkan waktu lama untuk menyelesaikan masalahnya mempunyai kompleksitas yang tinggi.

Jadi intinya, Pengertian Algoritma adalah suatu langkah/urutan yang logis dan sistematis untuk pemecahan suatu masalah atau untuk mencapai tujuan  yang diinginkan.

2. Tahap Pengembangan Algoritma
Tahap-tahap pengembangan Algoritma antara lain:
a. Defenisi Masalah;
b. Membuat Model;
c. Rancangan Algoritma;
d. Tulis Program;
e. Compile, apabila terjadi “Compile Error” atau “Sintak Error” kita dapat melakukan pengecekan ulang (perbaikan) pada tahap menulis program. Jika tidak terjadi “Compile Error” atau “Sintak Error” maka lanjut pada tahap selanjutnya;
f.  Executable code: =>Run, apabila terjadi error maka kita dapat melakukan pengecekan ulang (perbaikan) pada tahap menulis program, merancang algoritma, membuat model, atau pada tahap mendifinisikan masalah. Jika tidak terjadi error maka lanjut pada tahap selanjutnya;
g. Dokumentasi

  • Penyajian Algoritma

Algoritma dapat disajikan dengan menggunakan banyak cara, diantaranya:
a.       Structure English
Penyajian Algoritma dengan Structure English dilakukan dengan menyusun uraian kata yang menggunakan bahasa Inggris atau dengan bahasa lain, misalnya bahasa Indonesia. Algoritma dengan Structure English dapat ditulis dengan menggunakan huruf besar di awal kalimat dan selanjutnya dengan huruf kecil, atau dengan menggunakan huruf besar seluruhnya. Untuk memperjelas dapat ditambahkan nomor urut untuk setiap langkah yang ada. Karena menggunakan bahasa yang sehari-hari digunakan manusia, maka penyajian Algoritma dengan Bahasa alamiah dapat dipahami oleh pembaca yang belum memahami Bahasa pemrograman, misalnya pemakai sistem.

b.      Pseudocode (sandi semu)
Penulisan sandi semu menggunakan simbol-simbol perintah yang mirip dengan yang menggunakan di dalam bahasa pemrograman. Pseudocode berasal dari kata pseudo yang berarti mirip atau menyerupai, dan code yang berarti program. Pseudocode ditulis dengan menggunakan huruf besar, sedangkan variable atau komentar ditulis dengan menggunakan huruf kecil. Untuk memperjelas struktur Algoritma, digunakan tabulasi yang berbeda untuk penulisan sandi semu yang berada dalam kalang (loop) atau struktur kondisional. Dengan penulisan sandi semu mirip dengan penulisan program, maka Algoritma yang ditulis dengan sandi semu lebih tepat digunakan untuk mengkomunikasikan Algoritma kepada pemrogram.

c.       Flowchart
Bagan alir (flowchart) adalah suatu bagian yang menggambarkan arus logika dari data yang akan diproses dalam suatu program dari awal sampai akhir .Jenis-jenis flowchart adalah sebagai berikut:

1)  Program Flowchart
Simbol-simbol yang menggambarkan proses secara rinci dan detail antara instruksi yang satu dengan iunstruksi yang lainnya di dalam suatu program komputer yang bersifat logik (software).

2)  Sistem Flowchart
Simbol-simbol yang menggambarkan urutan prosedur secara detail di dalam suatu system komputerisasi dan bersifat fisik (hardware).

Komentar

Posting Komentar

Postingan populer dari blog ini

Program Kasir Sederhana Menggunakan Python

  Pada artikel ini saya akan memberikan contoh program kasir penjualan sederhana menggunakan bahasa python, yang merupakan tugas yang pernah saya kerjakan pada mata kuliah dasar pemrograman, yang mungkin dapat membantu kalian yang sedang mencari refrensi untuk membuat program sederhana dengan bahasa python. Saya akan menampilkan studi kasus dari program, source code, dan file program nya, langsung saja ke intinya ya Studi Kasus : Kasir Penjualan Minuman Cafe Kedai Cafe Maulana menjual minuman cafe dengan berbagai pilihan menu, pada usaha kedai cafe ini sudah masuk (PKP) Pengusaha Kena Pajak. Dengan begitu penjual atau pengusaha memberikan pungutan tambahan biaya sebesar 10% atau ppn saat pembelian minuman cafe, berikut detai kasir penjualan minuman cafe: 1. Untuk proses penginputan pada mesin kasir perlu memasukkan list angka urutan menu yang tersedia (1,2,3, dan 4), kemudian lanjut ke input jumlah pesan. Jika proses input tidak sesuai dengan list menu yang tersedia maka akan muncu...