Thursday, 10 December 2015

Cara Cepat Membuat Anak (Silsilah Keluarga dalam Swi Prolog)

prolog

Anak merupakan hasil kerjasama antara seorang ayah dan seorang ibu, jika tidak ada ayah, bagaimana ibu bisa membuat seorang anak begitupula sebaliknya , jika tidak ada ibu, bagaimana seorang ayah dapat membuat seorang anak, dalam swi prolog pun pernyataan seperti itu sangatlah penting.




Berbicara tentang swi prolog, prolog merupakan singkatan dari programming of logic. Swi prolog ini termasuk kedalam bahasa pemrograman logika atau bahasa lainnya yaitu bahasa non-procedural. Kenapa disebut dengan bahasa pemrograman logika, karena dalam proses pembuatan listing program harus menggunakan sebuah logika untuk menjalankan sebuah aplikasinya.

Bahasa prolog ini memungkinkan kita untuk mengeksplorasi lebih jauh tentang bahasan bahasan pada matematika diskrit, logika dan komputabilitas, yang biasanya prolog ini dikaitkan dengan bahasan bahasan yang berlogika dan merupakan bahasa pemrograman jenis perhitungan simbolis dan tak berangka.

Dalam implementasinya, swi prolog biasanya sibuat pada aplikasi notepad atau sejenisnya, lalu disimpan dalam bentuk ekstensi .pl , dan biasanya untuk swi prolog kebanyakan project menggunakan silsilah keluarga sebagai implementasinya. Dan implementasi tersebut dijelaskan berupa fakta fakta. Maka dari itu Seorang ayah dan ibu dalam prolog dijadikan sebuah fakta. faktanya :

kusmayadi adalah seorang ayah dari ghilman
tati adalah seorang ibu dari ghilman
kusmayadi adalah seorang pria.
tati adalah seorang wanita.


dalam listing prolog ditulis :
ortu(kusmayadi, ghilman).
ortu(tati, ghilman).
pria(kusmayadi).
wanita(tati).


dari fakta di atas dapat menghasilkan beberapa aturan, seperti :

anak(A, B) :-
ortu(B, A).

ayah(A, B) :-
ortu(A, B),
pria(A).

ibu(A, B) :-
ortu(A, B),
wanita(A).

Jika seorang anak lebih dari 2, dan bingung untuk penulisan kaka dan adiknya maka coba saja dengan
aturan seperti dibawah ini :
kakak1(anak1, anak2, anak3, anak4, anak5).
kakak1(anak2, anak3, anak4, anak5, _).
kakak1(anak3, anak4, anak5, _, _).
kakak1(anak4, anak5, _, _, _).

dibacanya :
anak1 adalah seorang kakak dari anak2, anak3, anak4, anak5.
anak2 adalah seorang kakak dari anak3, anak4, anak5.
anak3 adalah seorang kakak dari anak4, anak5.
anak4 adalah seorang kakak dari anak5.



No comments:

Post a Comment