• Tidak ada hasil yang ditemukan

ALGORITMA PEMROGRAMAN 1C PEMROGRAMAN LOGIK

N/A
N/A
Protected

Academic year: 2021

Membagikan "ALGORITMA PEMROGRAMAN 1C PEMROGRAMAN LOGIK"

Copied!
25
0
0

Teks penuh

(1)

Indah Wahyuni

(2)

P

ARADIGMA

-

PARADIGMA

P

EMROGRAMAN

 Bahasa pemrograman (programming language):

notasi yang dipakai untuk menentukan, mengorganisasi, dan melakukan penalaran tentang komputasi.

 Paradigma pemrograman: cara/pola berpikir

tentang pemrograman. Bhs . P emro gr ama n, 2 01 2 2 P em. log ik , Indah Wa hyuni

(3)

 Perancang suatu bahasa pemrograman harus

menyeimbangkan antara:

 membuat komputer mudah (convenient) untuk

dipakai

 membuat komputer dapat dipakai secara efisien.

machine language ⇓ assembly language ⇓ high-level language Bhs . P emro gr ama n, 2 01 2 3 P em. log ik , Indah Wa hyuni

(4)

 Keuntungan-keuntungan dari bahasa

pemrograman high-level:

 lebih mudah dibaca oleh manusia  tidak bergantung pada jenis mesin  tersedia program-library

 ada pengecekan yang dapat membantu deteksi error

Bhs . P emro gr ama n, 2 01 2 4 P em. log ik , Indah Wa hyuni

(5)

A

DA

4 P

ARADIGMA

U

TAMA

:

1. imperative programming

 komputasi dipandang sebagai suatu barisan

aksi/tindakan (a sequence of actions).

 menekankan "how“.

 Contoh bahasa pemrograman yang mendukung:

FORTRAN, C, ...

2. functional programming

 komputasi berdasarkan fungsi/kategori, dimana

fungsi mempunyai status yang sama dengan nilai-nilai lainnya.

 (Functions are first-class values).

 Contoh bahasa pemrograman yang mendukung:

LISP, ML, Haskell, ... Bhs . P emro gr ama n, 2 01 2 5 P em. log ik , Indah Wa hyuni

(6)

3. Logic Programming

 Program terdiri dari facts (fakta-fakta) dan rules  (aturan-aturan).

 Komputasi adalah deduksi.  Menekankan "what".

 Contoh bahasa pemrograman yang mendukung:

Prolog.

4. Object-Oriented Programming

 Program adalah simulasi.

 Objek bereaksi terhadap message.

 Class mendeskripsikan himpunan objek.

 Contoh bahasa pemrograman yang mendukung: C++,

Smalltalk, Java, ... Bhs . P emro gr ama n, 2 01 2 6 P em. log ik , Indah Wa hyuni

A

DA

4 P

ARADIGMA

U

TAMA

:

(7)

B

AHASA

P

EMROGRAMAN

I

MPERATIVE VS

D

EKLARATIVE

 Pada bahasa pemrograman imperative, Kita

memberitahu komputer ‘bagaimana/how’ cara menyelesaikan masalah

 Pada bahasa pemrograman deklarative, kita

mendeklarasikan ‘apa/what’ permasalahannya dan komputer yang akan memecahkan masalah nya Bhs . P emro gr ama n, 2 01 2 7 P em. log ik , Indah Wa hyuni

(8)

P

ENGENALAN

P

ROLOG

 Prolog adalah bahasa pemrograman pertama

yang murni menggunakan bahasa pemrograman deklarative

 Prolog kependekan dari Programming in logic

 Pertama kali diperkenalkan tahun 1970 oleh

Robert Kowalski dan Maarten van Emden, Alain Colmerauer , selanjutnya diimplementasikan

oleh David Warren

Bhs . P emro gr ama n, 2 01 2 8 P em. log ik , Indah Wa hyuni

(9)

 Penulisan program dalam bahasa prolog:

 Menuliskan pengetahuan kita mengenai suatu

masalah

 Membuat model dari suatu masalah

 Prolog digunakan untuk pemodelan sistem

(contoh prototipe perangkat lunak, desain sirkuit) dan

 Untuk banyak aplikasi intelegensi buatan

seperti Expert System dan Natural Language Processing Bhs . P emro gr ama n, 2 01 2 9 P em. log ik , Indah Wa hyuni

P

ENGENALAN

P

ROLOG

(10)

P

EMPROGRAMAN

P

ROLOG VS

K

ONVENSIONAL

Pemprograman Prolog PemprogramanKonvensional

Programer mentafsirkan APA masalah yang hendak diselesaikan menggunakan logika. Programer mengarahkan komputer BAGAIMANA menyelesaikan masalah. Komputer menghasilkan

urutan arahan mengikut tertib yang ditentukan oleh

pemprogram.

Sistem mengaplikasikan peraturan logika, deduksi

dan persamaan dalam menyelesaikan sesuatu masalah. Bhs . P emro gr ama n, 2 01 2 10 P em. log ik , Indah Wa hyuni

(11)

K

ONSEP

P

ROLOG

 Program Prolog terdiri dari sekumpulan clauses  Setiap clause dapat berupa fakta atau aturan

(fact or rule)  Contoh clauses :  Facts : boneka(power_rangers). boneka(snoopy).  Rules : main(aliya, snoopy)

suka(aliya,X):- boneka(X), main(aliya,X). suka(hasan,Y):- suka(aliya,Y) Bhs . P emro gr ama n, 2 01 2 11 P em. log ik , Indah Wa hyuni

(12)

T

ERMS

(T

ERMINOLOGI

/I

STILAH

)

 Sebuah terms mewakili suatu objek atau kelas

dari objek yang akan dibahas

 Objek dapat berupa :

 konstanta, yang dapat berupa :

angka : 37, 12.4, -5

string : ‘helo world’, ‘Pete’ atom : philip, monkey

 variabel : X, Person

 compound term : tanggal (May, 1, 2004)

Bhs . P emro gr ama n, 2 01 2 12 P em. log ik , Indah Wa hyuni

(13)

F

ACTS

(F

AKTA

)

 Fakta mewakili satu unit informasi yang

diasumsikan bernilai benar

 Kadangkala suatu fakta terdiri dari beberapa

istilah atau merupakan suatu daftar istilah

 Contoh:

 Langit itu biru. langit(biru).  Hari sedang hujan. hari(hujan).

Bhs . P emro gr ama n, 2 01 2 13 P em. log ik , Indah Wa hyuni

(14)

R

ULES

(A

TURAN

-

ATURAN

)

 Mengungkap satu hubungan di antara fakta-fakta

dengan menggunakan implikasi logika :-.

 Suatu aturan mewakili beragam kondisi (‘this is true

if this is true’)

 Contoh:

Sim suka buku suka(sim,buku). Siti suka buku suka(siti,buku).

kawan(sim,siti) :- suka(sim, buku), suka(siti,buku).

IF AND Bhs . P emro gr ama n, 2 01 2 14 P em. log ik , Indah Wa hyuni

(15)

 Secara umum aturan adalah suatu ekspresi

dengan bentuk :

 A :- B1, B2,…,Bn

 dimana A dan B1, B2, …Bn adalah formula atomik  A adalah head (kepala) dari aturan

 B1, B2, …., Bn adalah body (tubuh) dari aturan

Bhs . P emro gr ama n, 2 01 2 15 P em. log ik , Indah Wa hyuni

(16)

V

ARIABEL

 Penulisannya dengan huruf besar atau

underscores (contoh : X, TimeTable, _24)

 Semua yang dimulai dengan huruf besar pada

prolog adalah variabel (kecuali dalam tanda petik “)

atom

obyek nyata

variabel

obyek umum

Bhs . P emro gr ama n, 2 01 2 16 P em. log ik , Indah Wa hyuni

(17)

 Dalam Prolog terdapat dua variabel, yaitu:

1.Variabel bernama, yaitu variabel yang diberi

nama seperti X, Orang, dan sebagainya

2.Variabel tak bernama (placeholder),

dilambangkan dengan tanda garis bawah (_).

 Setiap term dengan awalan huruf kapital

selalu dianggap sebagai variabel

 awalan dengan huruf kecil dianggap sebagai

suatu relasi atau konstanta.

Bhs . P emro gr ama n, 2 01 2 17 P em. log ik , Indah Wa hyuni

V

ARIABEL

(18)

 Variabel tak bernama digunakan untuk

mengabaikan nilai suatu variabel, yang berarti bisa bernilai apa saja.

 Contoh keduanya:  member(X,[X|_]).  member(X,[_|Y]):-member(X,Y). Bhs . P emro gr ama n, 2 01 2 18 P em. log ik , Indah Wa hyuni

V

ARIABEL

(19)

R

ELASI

 Tabel dengan n buah kolom dan terdiri dari

beberapa baris fakta maupun aturan.

 Secara umum, suatu relasi dinyatakan dalam

bentuk aturan atau fakta sebagai berikut: P if Q1 and Q2 and ... and Qk untuk k>= 0

Bhs . P emro gr ama n, 2 01 2 19 P em. log ik , Indah Wa hyuni

(20)

K

LAUSA

(

CLAUSE

)

 Suatu frase (ungkapan) atau susunan kata

yang di dalam Prolog dapat berupa fakta atau aturan.

 Suatu clause merupakan statemen prolog,

contohnya fakta atau aturan (fact or rule)

 Semua clause pada prolog harus diakhiri dengan

tanda titik (dot)

Bhs . P emro gr ama n, 2 01 2 20 P em. log ik , Indah Wa hyuni

(21)

 Terdiri dari beberapa sub-klausa

 Dihubungkan menggunakan tanda koma (,)

yang berarti hubungan and (konjungsi)

 Tanda titik koma (;) yang menunjukkan

hubungan or (disjungsi)

 Contoh:

 orangtua(P,Q) :- bapak(P,Q); ibu(P,Q).  kakek(A,Z) :- bapak(A,X), orangtua(X,Z).

Bhs . P emro gr ama n, 2 01 2 21 P em. log ik , Indah Wa hyuni

K

LAUSA

(

CLAUSE

)

(22)

 Penggunaan program prolog dilakukan melalui

query

 Contoh :

 ? –parent(philip, anne).  ? –main(aliya, snoopy).

 Interpreter pada Prolog akan merespon : Yes or

No

 Semua query harus diakhiri tanda titik (dot)

Bhs . P emro gr ama n, 2 01 2 22 P em. log ik , Indah Wa hyuni

K

LAUSA

(

CLAUSE

)

(23)

Q

UERY

 Query dapat terdiri dari variabel-variabel :  ?- parent(philip, who).

 Interpreter prolog akan memberikan respon

melalui nilai – nilai yang terdapat pada variabel sehingga

 query akan menjadi benar (jika ada),

 kalau tidak ada jawaban yang benar, maka akan

direspon dengan no

 Prolog dapat ditulis dengan mengetik semikolon

(;), sehingga semua penyelesaian yang ada akan dijumpai/ditampilkan. Bhs . P emro gr ama n, 2 01 2 23 P em. log ik , Indah Wa hyuni

(24)

M

AKNA

D

EKLARATIF DAN

P

ROSEDUR

 Makna deklaratif hanya menumpukan kepada

hubungan yang ditakrifkan dalam program.

 Makna deklaratif akan menentukan apa yang

akan menjadi output kepada program.

 Makna prosedur menentukan bagaimana output

itu didapat yaitu bagaimana sebenarnya hubungan itu dinilai oleh sistem Prolog.

Bhs . P emro gr ama n, 2 01 2 24 P em. log ik , Indah Wa hyuni

(25)

Bhs . P emro gr ama n, 2 01 2 25 P em. log ik , Indah Wa hyuni

Referensi

Dokumen terkait

Dalam hal ini, kegiatan diselenggarakan dengan mengundang peserta dari tim ahli PLD UIN Sunan Kalijaga, perwakilan siswa/siswi penyandang disabilitas, mahasiswa difabel

Hasil penelitian menunjukkan secara umum tingkat literasi matematika pada materi tumbuhan paku di SMA Negeri 17 Bandar Lampung. Data yang digunakan dalam

Berdasarkan analisis yang telah dilakukan, menunjukkan bahwa rasio volume pinjaman pada anggota terhadap volume pinjaman diberikan selama tahun 2014-2016 memperoleh rasio

Kondisi wilayah eufotik di perairan terbuka (limnetik) cenderung memiliki kondisi suhu yang relatif homogen dan masih mendukung kehidupan biota heterotrof dengan

Hasil pengamatan warna bunga pada 14 genotipe padi lokal Kabupaten Kuantan Singingi menunjukan bahwa karakteristik morfologi hasil ada yang sama dan

Guru meminta peserta didik dari setiap kelompok yang mendapat topik/permasalahan yang sama membentuk kelompok baru (kelompok ahli) untuk mendiskusikan dan mengkaji

Karena lensa spheris dibentuk dari dua prisma yang Karena lensa spheris dibentuk dari dua prisma yang berhimpitan maka lensa spheris mempunyai kekuatan berhimpitan maka lensa

Berdasarkan uraian tersebut, dapat ditarik kesimpulan bahwa ciri dari sampel independen adalah sampling secara random, sampel diambil dari populasi yang berdistribusi