penjelasan logika algoritma lengkap


PENGERTIAN DASAR
Logika dan Algoritma diperkenalkan Oleh Ahli Matematika : Abu Ja’far
Muhammad Ibnu Musa Al Khawarizmi.
LOGIKA
berasal dari kata Yunani kuno λόγος (logos) yang berarti hasil
pertimbangan akal pikiran yang diutarakan lewat kata dan dinyatakan
dalam bahasa.
ALGORITMA
Diagram Alur sering digunakan untuk menggambarkan sebuah algoritma.
Dalam matematika dan komputasi, algoritma 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 kriteria kondisi awal yang harus dipenuhi sebelum menjalankan algoritma. Algoritma akan dapat selalu berakhir untuk semua kondisi awal yang memenuhi kriteria, dalam hal ini berbeda dengan heuristik. Algoritma sering mempunyai langkah pengulangan (iterasi) atau memerlukan keputusan (logika Boolean dan perbandingan) sampai tugasnya selesai.
Desain dan analisis algoritma adalah suatu cabang khusus dalam ilmu komputer yang mempelajari karakteristik dan performa dari suatu algoritma dalam menyelesaikan masalah, terlepas dari implementasi algoritma tersebut. Dalam cabang disiplin ini algoritma dipelajari secara abstrak, terlepas dari sistem komputer atau bahasa pemrograman yang digunakan. Algoritma yang berbeda dapat diterapkan pada suatu masalah dengan kriteria yang sama.
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.
Sejarah istilah “algoritma”Kata algoritma berasal dari latinisasi nama seorang ahli matematika dari Uzbekistan Al Khawārizmi (hidup sekitar abad ke-9), sebagaimana tercantum pada terjemahan karyanya dalam bahasa latin dari abad ke-12 “Algorithmi de numero Indorum”. Pada awalnya kata algorisma adalah istilah yang merujuk kepada aturan-aturan aritmetis untuk menyelesaikan persoalan dengan menggunakan bilangan numerik arab (sebenarnya dari India, seperti tertulis pada judul di atas). Pada abad ke-18, istilah ini berkembang menjadi algoritma, yang mencakup semua prosedur atau urutan langkah yang jelas dan diperlukan untuk menyelesaikan suatu permasalahan.
Jenis-jenis Algoritma
Terdapat beragam klasifikasi algoritma dan setiap klasifikasi mempunyai alasan 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 paradigma dapat digunakan dalam banyak algoritma yang berbeda.
Divide and Conquer, paradigma 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.
Dynamic programming, paradigma pemrograman dinamik 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 intrinsik ada perbedaan dari karakter permasalahan yang dihadapi.
Metode serakah. Sebuah algoritma serakah mirip dengan sebuah Pemrograman dinamik, bedanya jawaban dari submasalah tidak perlu diketahui dalam setiap tahap;
dan menggunakan pilihan “serakah” apa yang dilihat terbaik pada saat itu
1. Langkah- langkah yg dilakukan agar solusi masalah dapat diperoleh.
2. Suatu prosedur yg merupakan urutan langkah-langkah yg berintegrasi.
3. Suatu metode khusus yg digunakan untuk menyelesaikan suatu masalah yg
nyata.(Webster Dictionary)
TAHAP PENYELESAIAN MASALAH
•Ada Output, mengacu pada definisi algoritma, suatu algoritma haruslah mempunyai output yang harus merupakan solusi dari masalah yang sedang diselesaikan
•Efektifitas dan Efesiensi, Dikatakan efektif jika algoritma tersebut menghasilkan suatu solusi yang sesuai dengan masalah yang diselesaikan dalam arti algoritma harus tepat guna.Dikatakan efisiensi jika waktu proses suatu algoritma relatif lebih singkat dan penggunaan memori komputernya lebih sedikit.
•Jumlah Langkahnya Berhingga, maksudnya adalah barisan instruksi yang dibuat harus dalam suatu urutan tertentu atau harus berhingga agar masalah yang dihadapi dapat diselesaikan dengan tidak memerlukan waktu relatif lama.
Contoh :
Sebuah prosedur ketika akan mengirimkan surat kepada
teman:
•Tulis surat pada secarik kertas surat
•Ambil sampul surat atau amplop
•Masukkan surat ke dalam amplop
•Tutup amplop surat dengan lem perekat
•Tulis alamat surat yg dituju, jika tdk ingat, lebih dahulu ambil buku
alamat & cari alamat yg dituju, lalu tulis alamat tsb pd amplop surat.
•Tempelkan perangko pada amplop surat
•Bawa surat ke kantor pos utk diserahkan pd pegawai pos atau menuju
ke bis surat untuk memasukkan surat ke dlm kotak/bis surat.
Sebuah prosedur untuk masalah menentukan akar kuadrat
dari suatu bilangan Bulat Positif yg di Input:
Baca bilangan Bulat Positif yg diinput, sebut saja sebagai A
•Dinyatakan Nilai B adalah 0
•Hitung Nilai C yg berisikan Nilai B dikalikan Nilai B
•Jika Nilai C sama dengan Nilai A, maka Nilai B adalah Akar dari
Nilai A, lalu stop.
•Jika tidak, maka Nilai B akan bertambah 1
•Kembali ke langkah pada No. 3
TAHAPAN ANALISA ALGORITMA:
•Bagaimana merencanakan suatu algoritma
Menentukan model suatu algoritma yang digunakan sehingga dapat membuat barisan langkah secara berurutan guna mendapatkan solusi penyelesaian masalah. Menentukan model tersebut agar dapat digunakan dengan cara :
•Dengan bahasa semu (pseudocode), yaitu dengan
menggunakan bahasa sehari-hari, tetapi harus jelas dan
terstruktur
Contoh :
–menghitung Luas Segi tiga :
–Untuk Masukan Nilai Alas
–Masukan Nilai Tinggi
–Hitung Luas =( Alas * Tinggi ) / 2
–Cetak Luas
Bagaimana Menguji Program dari suatu Algoritma….
Yaitu dengan cara menyajikannya dalam salah satu bahasa
pemrogramana, misalnya BASIC, PASCAL, FORTRAN, dBase, atau yang
lainnya. Dalam proses, uji program oleh komputer akan melalui beberapa
tahap yaitu :
Tahap Proses uji Algoritma :
•Fase Debugging, yaitu fase dari suatu proses program eksekusi yang
akan melakukan koreksi terhadap kesalahan program. Yang dimaksud
disni adalah error atau salah dalam penulisan program baik logika
maupun sintaksnya.
•Fase Profilling, yaitu fase yang akan bekerja jika program tersebut
sudah benar atau telah melalui proses pada fase debugging. Fase ini
bekerja untuk melihat dan mengukur waktu tempuh atau running time
yang diperlukan serta jumlah memori/storage yang digunakan dalam
menyelesaikan suatu algoritma.
Analisis Suatu Algoritma
(Untuk melihat faktor efesiensi & efektifitas dari algoritma tersebut), Dapat dilakukan terhadap suatu algoritma dengan melihat pada :
•Waktu Tempuh (Running Time) dr suatu Algortima.
Adalah satuan waktu yang ditempuh atau diperlukan oleh suatu algoritma dalam menyelesaikan suatu masalah. Hal2 yg dapat mempengaruhi daripada waktu tempuh adalah :
Banyaknya langkah.
Besar dan jenis input data
sumber referensi : http://www.scribd.com/doc/13041326/Logika-Dan-Algoritma

. Bookmark the permalink.

Leave a Reply

Powered By Blogger