• RSS
  • Email
  • Follow us
  • Become a fan
  • Home
PHILIPUS NAHAYA
  • Home

Kategoti Label

  • Berita
  • Blog
  • Blog Mesin Uang
  • Buat Virus
  • Budaya Dayak
  • Cheat PB
  • Computer Security
  • Contoh Skripsi
  • Dampak Buruk Rokok
  • Download Film Gratis
  • Download Microsoft Office 2013
  • HEALTH
  • Hack
  • Hasil Soea Games
  • IPTEK
  • Ilmu Pengetahuan
  • Info
  • Inspirasi Hidup
  • NARUTO
  • Nahaya
  • Piala AFF
  • Point Blank
  • SEJARAH
  • Sains
  • Sea Games XXVI
  • Sea Games2011
  • Sejarah Indonesia
  • Seksologi
  • Semut Merah Cheat
  • Sistem Operasi
  • Software
  • Software Gratis
  • TIMNAS
  • Tips Dan Info Kesehatan
  • Tips Photosop
  • Tips Website
  • Tpis dan Trik Blogspot
  • Trik Internet
  • World Boxing
  • Zat Rokok
  • adat-istiadat dayak Kanayatn
  • aplikasi
  • bahasa pemograman
  • belajaar Hack
  • bisnis online
  • cara hack
  • chip Poker
  • dampak narkoba
  • game
  • hack Pemula
  • hacking
  • info unik
  • teknologi
  • tips PB

Program Menghitung Jumlah Bilangan Perulangan FOR Dengan Nilai Statis
Skrip Program Pascal
Output Program
program jum_bil; 
uses wincrt;
var
i, jum,bil: integer;
begin
jum:=0; {inisialisasi}
for i:=1 to 5 do
begin
write(‘Masukkan Bilangan = ‘);readln(bil);
jum:=jum+bil;
end;
writeln(‘Jumlah Bilangan = ‘,jum);
end.
Masukkan Bilangan = 12 
Masukkan Bilangan = 12
Masukkan Bilangan = 12
Masukkan Bilangan = 12
Masukkan Bilangan = 12
Jumlah Bilangan = 60
Program Menghitung Jumlah Bilangan Perulangan FOR Dengan Nilai Dinamis
Skrip Program Pascal
Output Program
program jum_bil2; 
uses wincrt;
var
i, n: integer;
jum, bil: real;
begin
write(‘Banyak bilangan :  ’);read(n);
jum := 0;
For i:= 1 to n do
begin
write(‘Masukkan Bilangan ‘,i, ‘=’);read(bil);
jum := jum+bil;
end;
writeln(‘Jum = ‘,jum:0:2);
end.
Banyak bilangan : 3 
Masukkan Bilangan 1 = 12
Masukkan Bilangan 2 = 13
Masukkan Bilangan 3 = 14
Jum = 39.00
Program Menghitung Jumlah dan Mean Bilangan Perulangan FOR Dengan Nilai Dinamis
Skrip Program Pascal
Output Program
program contoh_3; 
uses wincrt;
var
n, i : integer;
rata : real;
jum, bil : integer;
begin
Write(‘Masukkan nilai N = ‘);readln(n);
writeln (‘Nilai N adalah= ‘,n);writeln;
for i := 1 to n do
begin
write(‘Masukkan bilangan : ‘);read(bil);
jum := jum+bil;
end;
rata := jum/n;writeln;
writeln(‘Jumlahnya adalah : ‘,jum);
writeln(‘Nilai rata-ratanya :’, rata:0:2);
end.
Masukkan nilai N = 3 
Nilai N adalah= 3
Masukkan bilangan: 1
Masukkan bilangan: 2
Masukkan bilangan: 3
Jumlahnya adalah : 6
Nilai rata-ratanya : 2.00
Program Menghitung Jumlah dan Banyaknya Data
Script Program Pascal
Output Program Pascal
program contoh4; 
uses wincrt;
var
n, i,byk,jum, bil : integer;
begin
Write(‘Masukkan nilai perulangan : ‘);readln(n);
Writeln;
for i := 1 to n do
begin
write(‘Bilangan ‘,i,’ = ‘);read(bil);
if bil >= 10 then
begin
byk := byk+1;
jum := jum+bil ;
end;
end;
writeln;
writeln(‘banyak bilangan yang >= 10 : ‘,byk);
writeln(‘jumlah bilangan yang >= 10 : ‘,jum);
end.
Masukkan nilai perulangan: 3 
Bilangan 1 = 10
Bilangan 2 = 3
Bilangan 3 = 25
Banyak bilangan yang >= 10 : 2
Jumlah bilangan yang >= 10 : 35




program pembuatan_record;
uses crt;
procedure garis;
begin
writeln(’==============================================’);
end;

type
reckaryawan=record
jab,nip,nama:string;
gol:integer;
gapok,tunj:real;
end;

var pegawai:reckaryawan;
total:real;

begin
clrscr;
writeln(’ LAPORAN PERHITUNGAN GAJI KARYAWAN PT MAJU TAK GENTAR’);
garis;
writeln;
write(’Masukan NIP Karyawan : ‘);readln(pegawai.nip);
write(’Masukan Nama Karyawan : ‘);readln(pegawai.nama);
write(’Golongan[1/2/3] : ‘);readln(pegawai.gol);
garis;
case pegawai.gol of
1:
begin
pegawai.jab:=’Staf dan Tetap’;
pegawai.gapok:=900000;
end;
2:
begin
pegawai.jab:=’Staf dan Kontrak’;
pegawai.gapok:=700000;
end;
3:
begin
pegawai.jab:=’Kontrak’;
pegawai.gapok:=500000;
end;
end;

if pegawai.jab=’Staf dan Tetap’ then
pegawai.tunj:=25/100*pegawai.gapok
else
if pegawai.jab=’Staf dan Kontrak’ then
pegawai.tunj:=10/100*pegawai.gapok
else
pegawai.tunj:=0;
total:=(pegawai.gapok)+(pegawai.tunj);

writeln(’Jabatan Karyawan : ‘,pegawai.jab);
writeln(’Gaji Pokok : ‘,pegawai.gapok:8:0);
writeln(’Tunjangan : ‘,pegawai.tunj:8:0);
garis;
writeln(’Total Gaji Karyawan : ‘,total:8:0);
readln;
end.

Program DataPegawai;
Uses Wincrt;
Type Pegawai = record
NIP       : String[9];
Nama      : String[50];
Golongan  : Char;
Jamkerja  : Real;
End;
Var
Data                 : Pegawai;
Gapok               : Real;
Insentif,Gaber    : Real;
Ul                    : Char;
Begin
  Repeat
    Clrscr;
    Writeln('Entry Data Pegawai PT. Punya gua');
    Writeln('==========================');
    Writeln;
    Write('NIP          : ');Readln(Data.NIP);
    Write('Nama         : ');Readln(Data.Nama);
    Write('Golongan     : ');Readln(Data.Golongan);
    Write('Jam Kerja    : ');Readln(Data.Jamkerja);
    Writeln;
    Writeln;
    Case Data.Golongan of
      '1'  : Gapok:=1000000;
      '2'  : Gapok:=1500000;
      '3'  : Gapok:=2000000;
      Else
        Gapok:=0;
    End;
 
    if Data.Jamkerja>200 then
      Insentif:=(Data.Jamkerja-200)*10000
    else
      Insentif:=0;
    Gaber:=Gapok+Insentif;
    Clrscr;
    Writeln('Laporan Gaji Pegawai');
    Writeln('PT. XYZ');
    Writeln;
    Writeln('============================================================================');
    Writeln('|NIP       | Nama                    | Golongan | Jam Kerja | Gaji         |');
    Writeln('============================================================================');
    Writeln('|',Data.NIP:10,'|',Data.Nama:25,'|',Data.Golongan:10,'|',Data.Jamkerja:11:0,'|',Gaber:14:2,'|');
    Writeln('============================================================================');
    Writeln;
    Write('Mau Ulang Lagi? [Y/T]: ');Readln(Ul);
  Until Upcase(Ul) <> 'Y';
End.
Ah.. ni cuman posting buat pribadi aja, bukan dalam konteks menggurui atau sok pinter bikin program., itung-itung perpustakaan pribadi aja, dari pada lupa lebih baik kan disimpen di blog ini buat referensi kalo saya sendiri lupa dikemudian hari :).
Tapi suer, ada ceritanya dikit :p, ceritanya gini.. Minggu kemarennya temen gue bilang “poeja” kalo di kampus ada tugas quiz bikin contoh program pascal pake statement If..Then dan Case..Of, waduh.. pas kebetulan saya ga masuk lagi hari itu ( gi sibuk beresin proyek bikin website MLM :p).
Nah.. dari pada BeTe ga ikutan quiz, saya ajak poeja untuk Fastabiqul Khoirot, adu bikin contoh program pake pascal dengan statement If..Then dan Case..Of, kasus di bikin sama berdua, ga susah-susah amat seeh (amatiran alias klasik :p), bikin slip gaji dengan ketentuan gaji berdasarkan golongan yang ditetapkan dan ditentukan oleh status perkawinan untuk menghitung tunjangan anak dan istri, dimana jika mempunyai istri diberikan tunjangan sebesar 5%, dan anak mendapat tunjangan 2% untuk tiap anak, dan tunjangan anak dibatasi sampai 3 anak, jika anak lebih dari 3 maka hanya 3 anak yang mendapatkan tunjangan. Selainnya gaji di potong pajak, besar pajak ditentukan berdasarkan golongan yang di tetapkan, pada akhirnya gaji harus di total setelah dijumlahkan kemudian di potong pajak, dan ga lupa harus dibikinkan algoritma nya.

Ah.. ni cuman posting buat pribadi aja, bukan dalam konteks menggurui atau sok pinter bikin program., itung-itung perpustakaan pribadi aja, dari pada lupa lebih baik kan disimpen di blog ini buat referensi kalo saya sendiri lupa dikemudian hari :).
Tapi suer, ada ceritanya dikit :p, ceritanya gini.. Minggu kemarennya temen gue bilang “poeja” kalo di kampus ada tugas quiz bikin contoh program pascal pake statement If..Then dan Case..Of, waduh.. pas kebetulan saya ga masuk lagi hari itu ( gi sibuk beresin proyek bikin website MLM :p).
Nah.. dari pada BeTe ga ikutan quiz, saya ajak poeja untuk Fastabiqul Khoirot, adu bikin contoh program pake pascal dengan statement If..Then dan Case..Of, kasus di bikin sama berdua, ga susah-susah amat seeh (amatiran alias klasik :p), bikin slip gaji dengan ketentuan gaji berdasarkan golongan yang ditetapkan dan ditentukan oleh status perkawinan untuk menghitung tunjangan anak dan istri, dimana jika mempunyai istri diberikan tunjangan sebesar 5%, dan anak mendapat tunjangan 2% untuk tiap anak, dan tunjangan anak dibatasi sampai 3 anak, jika anak lebih dari 3 maka hanya 3 anak yang mendapatkan tunjangan. Selainnya gaji di potong pajak, besar pajak ditentukan berdasarkan golongan yang di tetapkan, pada akhirnya gaji harus di total setelah dijumlahkan kemudian di potong pajak, dan ga lupa harus dibikinkan algoritma nya.

Hueheuheuehu… sehari ama poeja berantem beda rumah, dia ngerjain di rumahnya dan saya ngerjain di rumah saya juga tentunya :), hari esok pun tiba.. karena janjinya cuman sehari ya… beres juga kerjaan saya.
tapi emang si poeja tuh sontoloyo… dia kagak ngerjain!!! kampreeeeeett… hhuahauhuahuahua, alesannya monitor lah anulah.. anulah.. ember banged tuh orang (hihihihi.. biar sewot orangnya baca ini).

nah.. dari pada bEtE kan.. mendingan diposting aja disini, sekalian di taro takut nanti lupa :). padahal kan ga susah-susah amat permasalahan yang di buat sama temenku itu, ni kek gini neehh…
========================================================Start___
Program Gaji_Tunjangan_dan_Pajak;
{Menghitung jumlah gaji berdasarkan golongan, tunjangan anak dan istri, total gaji setelah pajak}

Uses wincrt;

var
nama,jab    : string[20];
noin        : string[10];
golgaj           : char;
stmerit, jmlanak : integer;
gaj,tjbini,tjanak,pajgaj,jmlpajgaj,jmltjgaj,tolgaj,tolgajstpaj : real;

Begin
     clrscr;
     Writeln ('=============================================');
     Writeln ('PERHITUNGAN GAJI DAN TUNJANGAN DAN PAJAK GAJI');
     Writeln ('=============================================');
     Writeln;     
     Writeln ('Isikan Data anda sesuai ketentuan berikut ini : ');
     Writeln ('----------------------------------------------- ');
     Writeln;
     Writeln ('Golongan Gaji :            Status Perkawinan : ');
     Writeln ('a. Rp. 2.000.000.00        1. Kawin ');
     Writeln ('b. Rp. 2.500.000.00        2. Belum kawin');
     Writeln ('c. Rp. 3.000.000.00        3. Cerai ');
     Writeln;
     Write ('Masukkan No karyawan          : ');readln (noin);
     Write ('Masukkan nama anda            : ');readln (nama);
     Write ('Masukkan Jabatan              : ');readln (jab);
     Write ('Masukkan Golongan gaji anda   : ');readln (golgaj);


           case golgaj of
           'a' : begin
                 gaj := 2000000;
                 pajgaj := (2/100);
                 Write ('Status Perkawinan anda : ');readln (stmerit);
                       case stmerit of
                       1 : begin
                           tjbini := (5/100)*gaj;
                           Write ('Jumlah anak         : ');readln (jmlanak);
                                 if jmlanak <= 3 then
                                 tjanak := jmlanak*((2/100)*gaj)
                                 else
                                 tjanak := 3*((2/100)*gaj);
                           end;
                       2 : begin
                           tjbini := 0;
                           tjanak := 0;
                           end;
                       3 : begin
                           tjbini := 0;
                           Write ('Jumlah anak         : ');readln (jmlanak);
                                 if jmlanak <= 3 then
                                 tjanak := jmlanak*((2/100)*gaj)
                                 else
                                 tjanak := 3*((2/100)*gaj);
                           end;
                       else
                           Writeln;
                           Writeln ('================================================================');
                           Writeln;
                           Writeln ('Tunjangan tidak terhitung karena tidak terinput dengan benar !!!');
                       end;
                 end;
           'b' : begin
                 gaj := 2500000;
                 pajgaj := (2.5/100);
                 Write ('Status Perkawinan anda : ');readln (stmerit);
                       case stmerit of
                       1 : begin
                           tjbini := (5/100)*gaj;
                           Write ('Jumlah anak         : ');readln (jmlanak);
                                 if jmlanak <= 3 then
                                 tjanak := jmlanak*((2/100)*gaj)
                                 else
                                 tjanak := 3*((2/100)*gaj);
                           end;
                       2 : begin
                           tjbini := 0;
                           tjanak := 0;
                           end;
                       3 : begin
                           tjbini := 0;
                           Write ('Jumlah anak         : ');readln (jmlanak);
                                 if jmlanak <= 3 then
                                 tjanak := jmlanak*((2/100)*gaj)
                                 else
                                 tjanak := 3*((2/100)*gaj);
                           end;
                       else
                           writeln;
                           Writeln ('================================================================');
                           Writeln;
                           Writeln ('Tunjangan tidak terhitung karena tidak terinput dengan benar !!!');
                       end;
                 end;
           'c' : begin
                 gaj := 3000000;
                 pajgaj := (3/100);
                 Write ('Status Perkawinan anda : ');readln (stmerit);
                       case stmerit of
                       1 : begin
                           tjbini := (5/100)*gaj;
                           Write ('Jumlah anak         : ');readln (jmlanak);
                                 if jmlanak <= 3 then
                                 tjanak := jmlanak*((2/100)*gaj)
                                 else
                                 tjanak := 3*((2/100)*gaj);
                           end;
                       2 : begin
                           tjbini := 0;
                           tjanak := 0;
                           end;
                       3 : begin
                           tjbini := 0;
                           Write ('Jumlah anak         : ');readln (jmlanak);
                                 if jmlanak <= 3 then
                                 tjanak := jmlanak*((2/100)*gaj)
                                 else
                                 tjanak := 3*((2/100)*gaj);
                           end;
                       else
                           writeln;
                           Writeln ('================================================================');
                           Writeln;
                           Writeln ('Tunjangan tidak terhitung karena tidak terinput dengan benar !!!');
                       end;
                 end;
           else
           Writeln;
           Writeln ('=======================================');
           Writeln;
           Writeln ('Maaf, Golongan Gaji tidak terdaftar !!!');
           Writeln;
           end;

     jmltjgaj   := tjbini+tjanak;
     tolgaj     := gaj+jmltjgaj;
     jmlpajgaj  := tolgaj*pajgaj;
     tolgajstpaj := tolgaj-jmlpajgaj;

     Writeln;
     Writeln ('SLIP GAJI -----------------------------------> ');
     Writeln;
     Writeln ('Nama         : ',nama);
     Writeln ('No Karyawan  : ',noin);
     Writeln ('Jabatan      : ',jab);
     Writeln ('+============================================+');
     Writeln ('| Rincian                    | Jumlah        | ');
     Writeln ('+============================================+');
     Writeln ('| Besar Gaji               : | Rp.',gaj:8:0,'   |');
     Writeln ('| Tunjangan istri          : | Rp.',tjbini:8:0,'   |');
     Writeln ('| Tunjangan anak           : | Rp.',tjanak:8:0,'   |');
     Writeln ('| Total gaji               : | Rp.',tolgaj:8:0,'   |');
     Writeln ('| Pajak gaji               : | Rp.',jmlpajgaj:8:0,'   |');
     Writeln ('+----------------------------+---------------+');
     Writeln ('| Total gaji setelah pajak : | Rp.',tolgajstpaj:8:0,'   |');
     Writeln ('+----------------------------+---------------+');
     Writeln ('Program by, w1r0');
     readln;

End.



Sejarah Prolog
-      Prolog singkatan dari Programming in Logic.
-      Dikembangkan oleh  Alain Colmenraurer dan P.Roussel di Universitas Marseilles Perancis, tahun1972.
-      Prolog populer di Eropa untuk aplikasi artificial intelligence, sedangkan di Amerika peneliti mengembangkan aplikasi yang sama, yaitu LISP.

Perbedaan Prolog dengan Bahasa Lainnya
-      Bahasa Pemrograman yang Umum (Basic, Pascal, C, Fortran):
o   diperlukan algoritma/prosedur untuk memecahkan masalah (procedural languange)
o   program menjalankan prosedur yang sama berulang-ulang dengan data masukan yang berbeda-beda.
o   Prosedur dan pengendalian program ditentukan oleh programmer dan perhitungan dilakukan sesuai dengan prosedur yang telah dibuat.

-      Bahasa Pemrograman Prolog :
o   Object oriented languange atau declarative languange.
o   Tidak terdapat prosedur, tetapi  hanya kumpulan data-data objek (fakta) yang akan diolah, dan relasi antar objek tersebut membentuk aturan yang diperlukan untuk mencari suatu jawaban
o   Programmer menentukan tujuan (goal), dan komputer menentukan bagaimana cara mencapai tujuan tersebut serta mencari jawabannya.
o   Dilakukan pembuktian terhadap cocok-tidaknya tujuan dengan data-data yang telah ada dan relasinya.
o   Prolog ideal untuk memecahkan masalah yang tidak terstruktur, dan prosedur pemecahannya tidak diketahui, khususnya untuk memecahkan masalah non numerik.
o   Prolog bekerja seperti pikiran manusia, proses pemecahan masalah bergerak di dalam ruang masalah menuju suatu tujuan (jawaban tertentu).
o   Contoh : Pembuatan program catur dengan Prolog

Aplikasi Prolog :
-      Sistem Pakar (Expert System)
Program menggunakan teknik pengambilan kesimpulan dari data-data yang didapat, layaknya seorang ahli.
Contoh dalam mendiagnosa penyakit
-      Pengolahan Bahasa Alami (Natural Languange Processing)
Program dibuat agar pemakai dapat berkomunikasi dengan komputer dalam bahasa manusia sehari-hari, layaknya penterjemah.
-      Robotik
Prolog digunakan untuk mengolah data masukanyang berasal dari sensor dan mengambil keputusan untuk menentukan gerakan yang harus dilakukan.
-      Pengenalan Pola (Pattern Recognition)
Banyak digunakan dalam image processing, dimana komputer dapat membedakan suatu objek dengan objek yang lain.
-      Belajar (Learning)
Program belajar dari kesalahan yang pernah dilakukan, dari pengamataqn atau dari hal-hal yang pernah diminta untuk dilakukan.

Fakta dan Relasi

-      Prolog terdiri dari kumpulan data-data objek yang merupakan suatu fakta.
-      Fakta dibedakan 2 macam :
o   Menunjukkan relasi.
o   Menunjukkan milik/sifat.
-      Penulisannya diakhiri dengan tanda titik “.”
-      Contoh :
Fakta
Prolog
Slamet adalah ayah Amin
ayah (slamet, amin).
Anita adalah seorang wanita
wanita (anita).
Angga suka renang dan tenis
suka(angga, renang). dan suka(angga,tenis).
Jeruk berwarna jingga
jngga(jeruk).


Aturan (“Rules”)

-      Aturan adalah suatu pernyataan yang menunjukkan bagaimana fakta-fakta berinteraksi satu dengan yang lain untuk membentuk suatu kesimpulan.
-      Sebuah aturan dinyakatakan sebagai suatu kalimat bersyarat.
-      Kata “if” adalah kata yang dikenal Prolog untuk menyatakan kalimat bersyarat atau disimbolkan dengan “:-“.
-      Contoh :
Fakta dan Aturan
Prolog
F : Tino suka apel
A : Yuli suka sesuatu yang disukai Tino
suka(tino, apel).
suka(yuli,Sesuatu) :-  suka(tino,Sesuatu).
   
-      Setiap aturan terdiri dari kesimpulan(kepala) dan tubuh.
-      Tubuh dapat terdiri dari 1 atau lebih pernyataan atau aturan yang lain, disebut subgoal dan dihubungkan dengan logika “and”.
-      Aturan memiliki sifat then/if conditional
“Kepala(head) benar jika tubuh (body) benar”.

- Contoh : Silsilah keluarga :
Text Box:








Fakta dan Aturan
Prolog
F : Slamet adalah ayah dari Amin
F : Amin adalah ayah dari Badu
F : Slamet adalah kakek dari Badu
A :
Slamet adalah benar kakek Badu jika Slamet adalah benar ayah Amin dan Amin adalah benar ayah Badu.
ayah(slamet,amin).
ayah(amin,badu).
kakek(slamet,badu).

kakek(slamet,amin) :-
ayah(slamet,amin) and
ayah(amin,badu).
F : Amin adalah saudara kandung Anang
F : Amin mempunyai ayah Slamet
F:  Anang mempunyai ayah Slamet.
A :
Amin adalah benar saudara kandung Anang, jika Amin mempunyai ayah Slamet dan Anang juga mempunyai ayah Slamet.
saudara_kandung(amin,anang).
ayah(slamet,amin).
ayah(slamet,anang).


saudara_kandung(amin,anang) :-
ayah(slamet,amin) and
ayah(slamet,anang).

Pertanyaan (“Query”)

-      Setelah memberikan data-data berupa fakta dan aturan, selanjutnya kita dapat mengajukan pertanyaan berdasarkan fakta dan aturan yang ada.
-      Penulisannya diawali simbol “?-“ dan diakhiri tanda “.”.

-      Contoh :
Pertanyaan
Prolog dan Jawaban Program
Apakah Tini suka boneka ?
?- suka(tini,boneka).
Yes ……. (jika faktanya Tini suka boneka)
No……..…(jika tidak sesuai fakta).
Apakah yang disukai Tini ?
?- suka(tini,Apa).
Apa=boneka
Siapakah yang suka boneka ?
?- suka(Siapa,boneka).
Siapa=tini
Dari contoh silsilah keluarga di atas :
Siapakah kakek Budi ?


Siapakah cucu Slamet ?


?- kakek(Siapa,budi).
Siapa=slamet

?- kakek(slamet,Cucu).
Cucu=budi ;
Cucu=badu

(jika kemungkinan ada lebih dari satu jawaban gunakan tanda “;” pada akhir setiap jawaban).


Predikat (“Predicate”)

-      Predikat adalah nama simbolik untuk relasi.
-      Contoh :           ayah(slamet,amin).
Predikat dari fakta tersebut ditulis :  ayah(simbol,simbol).
dimana ayah adalah nama predikat, sedangkan slamet dan amin adalah menujukkan argumen.
Sebuah predikat dapat tidak memiliki atau memiliki argumen dengan jumlah bebas. Jumlah argumen suatu predikat disebut aritas (arity).
                ayah(nama)   …… aritas-nya 1
                ayah(nama1,nama2) ….. aritasnya 2
-      Syarat-syarat penulisan nama predikat :
o   Harus diawali dengan huruf kecil dan dapat diikuti dengan huruf, bilangan atau garis bawah.
o   Panjang nama predikat maksimum 250 karakter.
o   Tidak diperbolehkan menggunakan spasi, tanda minus, tanda bintang dan garis miring.
Variabel

-      Varibel adalah besaran yang nilainya dapat berubah-ubah.

-      Tata cara penulisan variabel :
1.       Nama varibel harus diawali huruf besar atau garis bawah(_)
2.       Nama variabel dapat terdiri dari huruf, bilangan, atau simbol dan merupakan kesatuan dengan panjang maksimum 250 karakter.
3.       Nama variabel hendaknya mengandung makna yang berkaitan dengan data yang dinyatakannya.

-      Contoh : dari silsilah di atas :
?- ayah(slamet,Anak).
Anak=budi ;
Anak=badu
No
Dari query di atas akan dicari siapakah anak dari ayah yang bernama Slamet. Karena mempunyai relasi yang sama (yaitu ayah), variabel Anak akan mencari nilai dari konstanta suatu fakta/aturan yang sepadan.
Tanda “;” digunakan bila terdapat kemungkinan ada lebih dari satu jawaban.
“No” berarti tidak ada lagi kemungkinan jawaban.

Contoh : dari silsilah di atas :
                        ?- ayah(slamet,X),ayah(X,Y).
                        X=amin
                        Y=budi  ;
                        X=amin
                        Y=badu  ;
                        X=anang
                        Y=didi   ;
                        X=anang
                        Y=didi
                        No




Contoh : Silsilah Keluarga

%% FAKTA */
       
%%orang tua */
        ayah(slamet,amin).
        ayah(slamet,anang).
        ayah(amin,budi).
        ayah(amin,badu).
        ayah(anang,didi).
        ayah(anang,dadi).
        ayah(santoso,bu_amin).
        ayah(supardi,bu_anang).
        ibu(bu_slamet,amin).
        ibu(bu_slamet,anang).
        ibu(bu_amin,budi).
        ibu(bu_amin,badu).
        ibu(bu_anang,didi).
        ibu(bu_anang,dadi).
        ibu(bu_santoso,bu_amin).
        ibu(bu_santoso,bu_anang).

%% ATURAN */

%% Kakek adalah kakek Cucu */

        kakek(Kakek,Cucu) :-
                ayah(Ayah,Cucu),
                ayah(Kakek,Ayah).
        kakek(Kakek,Cucu) :-
                ibu(Ibu,Cucu),
                ayah(Kakek,Ibu).
%% Nenek adalah nenek Cucu */

        nenek(Nenek,Cucu) :-
                ayah(Ayah,Cucu),
                ibu(Nenek,Ayah).
        nenek(Nenek,Cucu) :-
                ibu(Ibu,Cucu),
                ibu(Nenek,Ibu).




%% Nama1 adalah saudara kandung Nama2

        saudara_kandung(Nama,Name) :-
                ayah(Ayah,Nama),
                ayah(Ayah,Name),
                ibu(Ibu,Nama),
                ibu(Ibu,Name),
                Nama \= Name.

%% Sdr1 adalah saudara sepupu Sdr2

        saudara_sepupu(Sdr1,Sdr2) :-
                ayah(Ayah1,Sdr1),
                ayah(Ayah2,Sdr2),
                saudara_kandung(Ayah1,Ayah2).

        saudara_sepupu(Sdr1,Sdr2) :-
                ayah(Ayah,Sdr1),
                ibu(Ibu,Sdr2),
                saudara_kandung(Ayah,Ibu).

        saudara_sepupu(Sdr1,Sdr2) :-
                ibu(Ibu,Sdr1),
                ayah(Ayah,Sdr2),
                saudara_kandung(Ibu,Ayah).

        saudara_sepupu(Sdr1,Sdr2) :-
                ibu(Ibu1,Sdr1),
                ibu(Ibu2,Sdr2),
                saudara_kandung(Ibu1,Ibu2).

Postingan Lama Beranda

Popular Posts

  • FOTO ARTIS KOREA PALING POPULER
  • TOGEL INDONESIA (SINGAPURA TOGEL)
  • VOUCHER GEMSCOOL GENERATOR[CASH GRATIS]
  • CARA MEMBUAT CHEAT PB DENGAN VB
  • EKPEDISI KE RIAM DAIT ( AIR TERJUN 7 TINGKAT) YANG ADA DI SERIMBU
  • Beberapa Contoh Program Pascal Paling Sederhana
  • Gambar TIMNAS INDONESIA DI AFF 2010
  • DOWNLOAD KUMPULAN LAGU NATAL 2011
  • Internetan Pake Proxy Luar Negeri
  • Cara membuat DLL Cheat PB Sendiri

CHEAT POINT BLANK GARENA UPDATE

Foto saya
Philipus Nahaya
hanya menyalurkan hobby
Lihat profil lengkapku
PHILIPUS NAHAYA © 2021. All rights reserved. Designed by Philipus Nahaya