.::Selamat Datang Di Blog Ini..Semoga Bermanfaat::.

Program diagnosa mobil dengan prolog

Sunday 8 January 2012


Pada posting kali ini adalah membuat suatu aplikasi menggunakan prolog, pada program ini ada 2 file yang saling berhubungan yaitu mobil.pl dan kerangka.pl. untuk menjalankannya sama dengan aplikasi lain yang dibuat dengan menggunakan prolog yaitu tinggal run aja, tapi jangan lupa sebelum jalanin filenya harus kamu consult dlu,,
o iya file pertama berisi database dan file yang ke dua merupakan pertanyaannya. Ini bang source code file pertamanya :

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%     kerangka.pl                                                                                        %%
%%     Program Diagnosa Mobil                                                                    %%
%%     kelompok IV                                                                                      %%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

mulai:-
                inisialisasi,
                data_pengamatan,
                aturan(Nomor,Alasan),
                jawaban(Alasan,Jawab),
                write(Jawab),nl,
                write('Aturan yang dipakai adalah '),
                write(Nomor),nl,nl,
                retractall(observation(_)).
mulai:-
                write('Maaf tidak dapat membantu!'),nl,nl,
                retractall(observation(_)).

%%         memanggil basis data(aturan, pertanyaan dan jawaban)
%%         yang ada di file mobil.pl

inisialisasi:-
                write('**Antaramuka Sistem Pakar dengan PROLOG**'),nl,
                consult('g:\tugas_logika\mobil.pl'),
                judul(Judul),write(Judul),nl,nl,
                tulis_pesan,nl.

tulis_pesan:-
                pesan(Pesan),
                write(Pesan),nl,fail.
tulis_pesan:-
                nl.

% kumpulkan

data_pengamatan:-
                pertanyaan(Tanya,Obs),
                write(Tanya),nl,
                read(Yatidak),
                Yatidak=y,
                assert(observation(Obs)),
                fail.
data_pengamatan.

Setelah selesai jangan lupa disimpan ya, namanya kerangka.pl. setelah itu buat file baru lagi dan ketik script di bawah ini, Banyak ya,,nyante bang masih ada lagi ni,,hhe..

%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
%%         mobil.pl                                                                                                                                                  %%
%%         basis data mobil, pertanyaan, aturan dan jawaban                                                                      %%
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%

judul('*HIDUPKAN MOBIL*').
pesan('Diasumsikan mobil tidak dapat dihidupkan').
pesan('Jawab pertanyaan berikut dengan y atau n').

pertanyaan('Apakah lampu besar hidup?', lampu_hidup).

pertanyaan('Apakah saat men-starter mobil, mesinnya hidup?', mesin_hidup).

pertanyaan('Apakah ada percikan api pada titik pembagi arus (delko)?', api_delko).

pertanyaan('Apakah ada percikan api pada plug pengapian (busi)?', plug_pengapian).

pertanyaan('Adakah lampu dim hidup jika dihidupkan?', lampu_dim).

pertanyaan('Apakah penunjuk meteran bensin bergerak?', bacaan_meteran).

pertanyaan('Apakah bensinnya masih ada?', tangki_bensin).

pertanyaan('Apakah plug pengapian (busi) nampak basah?', plug_basah).

aturan(1, aki_kosong):-
                not(observation(lampu_hidup)),
                not(observation(mesin_hidup)).

aturan(2, kurang_tegangan):-
                observation(lampu_hidup),
                not(observation(api_delkko)),
                observation(mesin_hidup).

aturan(3, kelebihan_tegangan):-
                observation(lampu_hidup),
                observation(api_delkko),
                observation(mesin_hidup),
                not(observation(plug_pengapian)).

aturan(4, tak_dapat_distarter):-
                observation(lampu_hidup),
                not(observation(mesin_hidup)),
                not(observation(lampu_dim)).

aturan(5, bensin_habis):-
                not(observation(bacaan_meteran)),
                not(observation(bensin_dalam_tangki)).

aturan(6, pancaran_tak_ada):-
                observation(bacaan_meteran),
                observation(bensin_dalam_tangki),
                not(observation(plug_basah)).

aturan(7, aliran_tak_ada):-
                observation(bacaan_meteran),
                not(observation(bensin_dalam_tangki)).

aturan(8, mesin_banjir):-
                observation(bacaan_meteran),
                observation(plug_basah).

jawaban(aki_kosong,'Aki kosong').

jawaban(kurang_tegangan,'Ada Kegagalan dalam rangkaian pengapian (rendah)').

jawaban(kelebihan_tegangan,'Ada Kegagalan dalam rangkaian pengapian (tinggi)').

jawaban(tak_dapat_distarter, 'Tidak dapat di "starter"').

jawaban(bensin_habis, 'Kehabisan bensin').

jawaban(tak_dapat_distarter, 'Tidak ada pancaran bensin dalam karburator').

jawaban(aliran_tak_ada,'Tidak ada aliran bensin dari tangki minyak ke karburator').

jawaban(mesin_banjir,'Mesin dibanjirir bensin').


Panjang ya,,hhe,,Kalo sudah  sudah simpan dengan nama mobil.pl
jika di jalankan maka akan seperti ni :


selesai bang,,,bagus tow,, :) kata bu dosen si project paling bagus (pamer dikit :D)
Ok dech, semoga bermanfaat ya,, see yaa

6 comments:

indar said...

maksih gan ilmunya moga allah mebalas kebaikan agan

Cged Boedy said...

makasih sudah berkunjung gan... :)

Unknown said...

makasih gan infonya..benar2 jelas dan mudah dimengerti

annazigans said...

ini ada artikelnya gak ? mau dong.

Unknown said...

sangat bermanfaat, izin share.

Unknown said...

gan, punyaku kok masih eror ya

Post a Comment

 

Followers

Waktu Sholat Kebumen

Pengunjung