Algoritma Dan Algorism

12
Algoritma dan Algorism Algoritma adalah urutan langkah-langkah logis penyelesaian masalah yang disusun secara sistematis. Suatu algoritma haruslah dinyatakan dalam bentuk yang dapat dimengerti oleh processor. Menurut Donald E.Knuth algoritma harus memiliki 5 unsur penting yaitu : 1.Algoritma harus berhenti setelah mengerjakan sejumlah langkah terbatas. 2.Setiap langkah harus didefinisikan dengan tepat dan tidak bermakna ganda 3.Algoritma memiliki nol atau lebih masukkan (input) yakni besaran yang diberikan kepada algoritma sebelum algoritma mulai bekerja. 4.Algoritma memiliki nol atau lebih keluaran (output) yakni besaran yang memiliki hubungan dengan masukkan. 5.Algoritma harus efektif yakni setiap langkah harus sederhana sehingga dapat dikerjakan dalam sejumlah waktu yang masuk akal. Mekanisme pelaksanaan algoritma oleh pemroses

Transcript of Algoritma Dan Algorism

Algoritma dan Algorism

Algoritma dan AlgorismAlgoritma adalah urutan langkah-langkah logis penyelesaian masalah yang disusun secara sistematis. Suatu algoritma haruslah dinyatakan dalam bentuk yang dapat dimengerti oleh processor. Menurut Donald E.Knuth algoritma harus memiliki 5 unsur penting yaitu :

1. Algoritma harus berhenti setelah mengerjakan sejumlah langkah terbatas.

2. Setiap langkah harus didefinisikan dengan tepat dan tidak bermakna ganda

3. Algoritma memiliki nol atau lebih masukkan (input) yakni besaran yang diberikan kepada algoritma sebelum algoritma mulai bekerja.

4. Algoritma memiliki nol atau lebih keluaran (output) yakni besaran yang memiliki hubungan dengan masukkan.

5. Algoritma harus efektif yakni setiap langkah harus sederhana sehingga dapat dikerjakan dalam sejumlah waktu yang masuk akal.

Mekanisme pelaksanaan algoritma oleh pemrosesProgram adalah realisasi (perwujudan atau implementasi teknis) algoritma dalam bahasa pemrograman tertentu sehingga dapat dilaksanakan oleh komputer.

Sebagai pemproses, komputer terdiri dari 4 komponen utama yakni piranti masukkan, piranti keluaran, unit pemroses utama (central processing unit/CPU), dan memori.Memprogram dan bahasa pemrogramanMemprogram adalah metodologi pemecahan masalah,kemudian menuangkannya dalam suatu notasi tertentu yang dapat dibaca dan dipahami. Tahapan pelaksanaan program oleh komputer Algoritma ditranslasikan menjadi program dalam bahasa tingkat tinggi. Selanjutnya, program dikompilasi dan diterjemahkan menjadi program dalam bahasa mesin dan dihubungkan dengan berkas library. Kemudian instruksi dalam bahasa mesin diinterpretasi oleh CPU. Pada tahapan terakhir, operasi yang bersesuaian dengan setiap instruksi akan dilaksanakan. (munir,2002).

Notasi algoritma bebas terhadap bahasa pemrograman dan mesin komputerNotasi algoritma bebas dari spesifikasi bahasa pemrograman dan komputer yang digunakan.

Notasi yang digunakan dalam penulisan algoritma adalah :

1. Notasi algoritma menggunakan untaian kalimat deskriptif.

2. Notasi algoritma menggunakan diagram alir (Flow Chart).

3. Notasi algoritma menggunakan Pseudo-Code.

Notasi algoritma menggunakan untaian kalimat deskriptifAlgoritma EUCLIDEAN

Diberikan dua buah bilangan bulat tak-negatif m dan n (m ( n). Carilah pembagi bersama terbesar (pbt), dari kedua bilangan tersebut, yaitu bilangan bulat positif terbesar yang habis membagi m dan n.

DESKRIPSI

1. Jika n = 0 maka

m adalah jawabannya :

stop

tetapi jika m ( 0

lanjutkan ke langkah 2

2. Bagilah m dengan n dan misalkan r adalah sisanya.

3. Ganti nilai m dengan nilai n dan nilai n dengan nilai r , lalu ulang kembali kelangkah 1

Notasi algoritma menggunakan diagram alir (Flow Chart)Flow Chart Algoritma Euclidean

ya

tidak

Notasi algoritma menggunakan Pseudo-Code (Pengkodean semu)Algoritma EUCLIDEAN

{dibaca dua buah bilangan bulat tak-negatif m dan n (m ( n). Carilah pembagi bersama terbesar (pbt), dari kedua bilangan tersebut, yaitu bilangan bulat positif terbesar yang habis membagi m dan n.}

DEKLARASI

m,n : integer{bilangan bulat yang akan di cari pbtnya}

r: integer{sisa hasil bagi}

DESKRIPSI :

read (m,n){m ( n}

while n ( 0 do

r ( mod n{hitung sisa hasil pembagian}

m ( mod n

n ( r

endwhile

{kondisi selesai pengulangan : n = 0, maka pbt (m,n) = m)

write (m)

LOGIKA Logika merupakan dasar dari semua penalaran (reasoning). Logika mempunyai aplikasi luas didalam ilmu komputer, pemrograman, analisis kebenaran algoritma, kecerdasan buatan, dan perancangan komputer. PROPOSISIProposisi adalah sebuah kalimat deklaratif yang bernilai benar (true) atau salah (false), tetapi tidak keduanya. Namun lain untuk proposiosi adalah kalimat.Proposisi biasanya dilambangkan dengan huruf kecil seperti p, q, dan r.

Mengkombinasikan proposisiOperator yang digunakan untuk mengkombinasikan proposisi disebut operator logika.

Operator logika terdiri atas :

Operator Biner (operator yang mengoprasikan dua proposisi) yakni operator dan (and) dan atau (or).

Operator User (operator yang hanya butuh satu buah proposisi) yakni operator tidak (not)

Proposisi majemukProposisi atomik adalah proposisi yang bukan merupakan kombinasi proposisi lain. Proposisi majemuk adalah proposisi yang disusun dari proposisi-proposisi atomik Definisi Misalkan p dan q adalah dua buah proposisi.

Konjungsi (conjunction) p dan q, dinyatakan dengan notasi p ( q, adalah proposisi p dan q;

Disjungsi (disjunction) p dan q dinyatakan dengan notasi p ( q adalah proposisi p atau q;

Ingkaran/Negasi (negation) dari p, dinyatakan dengan notasi~p, adalah proposisi tidak p.

Catatan Notasi ingkaran dapat berupa simbol - misalnya -p, atau simbol , atau kata not misalnya not p.

Kata tidak dapat ditukliskan ditengah pernyataan. Jika kata tidak diberikan diawal pernyataan maka ia biasanya disambungkan dengan kata benar menjadi tidak benar. Kata tidak dapat juga diganti dengan kata bukan bergantung pada rasa bahasa yang tepat untuk pernyataan tersebut.

Nilai kebenaranNilai kebenaran dari proposisi majemuk ditentukan oleh nilai kebenaran dari proposisi atomiknya dan cara mereka dihungkan oleh operator logika.

Definisi

Misalkan p dan q adalah proposisi.

Konjungsi (p ( q) bernilai benar jika p dan q keduanya benar, selain itu nilainya salah

Disjungsi (p ( q) bernilai salah jika p dan q keduanya bernilai salah, selain itu nilainya benar.

Negasi p bernilai benar jika p salah. Sebaliknya bernilai salah jika p benar.

Hukum-hukum logikaBerikut ini adalah hukum-hukum logika (atau hukum-hukum aljabar proposisi)

Hukum identitas:

(p ( F) ( p

(p ( T) ( p

Hukum null/dominasi

(p ( T) ( T

(p ( F) ( F

Hukum negasi

(p ( ~p) ( T

(p ( ~p) ( F

Hukum idempoten

(p ( p) ( p

(p ( p) ( p

Hukum involusi (negasi ganda)

~(~p) ( p

Hukum penyerapan (absorpsi)

p ( (p ( q) ( p

p ( (p ( q) ( p

Hukum komutatif

(p ( q) ( (p ( q)

(p ( q) ( (p ( q)

Hukum asosiatif

P ( (q ( r) ( (p ( q) ( r

p ( (q ( r) ( (p ( q) ( r

Hukum distributif

P ( (q ( r) ( (p ( q) ( (p ( r)p ( (q ( r) ( (p ( q) ( (p ( r)

Hukum De Morgan

~(p ( q) ( (~p ( ~q)

~(p ( q) ( (~p ( ~q)

Disjungsi ekslusifMisalkan p dan q adalah proposisi. Exslusive Or (xor) p dan q, dinyatakan dengan notasi p (q, adalah proposisi yang bernilai benar bila hanya salah satu dari p dan q benar, selai itu nilainya salah.

Proposisi bersyarat (implikasi)Misalkan p dan q adalah dua buah proposisi. Proposisi majemuk jika p maka q disebut proposisi bersyarat (implikasi) dan dilambangkan dengan p ( q, proposisi p disebut hipotesis(atau antesenden atau premis atau kondisi) dan proposisi q disebut konklusi (atau konsekuen)

Implikasi p(q tidak hanya diekspresikan dalam pernyataan jika p, maka q, tetapi juga dapat diekspresikan dalam berbagai cara, antara lain:

1. Jika p, maka q (bentuk yang lazim digunakan seperti pada contoh diatas)

2. Jika p.q

3. p mengakibatkan q (q implies q)

4. q jika p

5. p hanya jika q

6. p syarat cukup untuk q (hipotesis menyatakan syarat cukup (Sufficient condition )

7. q syarat perlu untuk p (konklusi menyatakan syarat perlu (Necessary condition)

8. q bila mana p (q whenever p)

Selesai

Tulis m

r = m MOD n

m = n

n = r

n = 0

Baca m dan n

Mulai