Prolog - Interfaz Grafica Prolog

 
Vista:

Interfaz Grafica Prolog

Publicado por Kevin Neil Reinoso (1 intervención) el 19/11/2012 22:58:21
Tengo una base de conocimientos en Prolog que se ejecuta por la pantalla a blanco y negro....
Quiero pasar esa base de conocimientos a Una Interfaz grafica o en la que tenga dos botones uno para ejecutar la base de conocimientos y otro de salir.

Esta es la base de conocimiento

predicates
nondeterm dano(symbol,symbol,symbol)
nondeterm electrico
nondeterm fluidos
nondeterm otros
nondeterm mecanico
nondeterm si(symbol,symbol)
nondeterm no(symbol,symbol)
nondeterm run


clauses

dano(la,bateria,"Cambie Inmediatamente la bateria, O Utilize los Cables de Conexion para Pasar energia de una bateria a otra"):- electrico, no(prenden,tableros), no(suena,alencender).
dano(los,piñones,"Ajuste los Piñones "):- electrico, si(prendido,intermitente), si(bota,chispas).
dano(la,gasolina, "Revise el nivel de la gasolina y si es necesario Tanquee"):- fluidos, si(tiembla,carro), si(se,cascabela).
dano(el,aceite, "Revise y Cambie el Aceite"):-fluidos, si(expulsa,gasesBlancos).
dano(el,radiador,"Echarle un Huevo de gallina al Radiador para que este tape la Fuga" ):-fluidos, si("Le Sale Vapor por el ",capo).
dano(las,llantas,"Sacar la llanta de Repuesto del Auto que debe estar en la parte trasera y Quitar la dañada para remplazarla por el Repuesto"):- otros,si("Tiene un Sonido Extraño abajo del ",chasis).
dano(la,transmision,""):-mecanico,si("Acelera mas de lo ",debido), si("huele a quemado a traves de las rejillas de ventilacion","?").

electrico:- no(enciende,"?").
mecanico:-si(enciende,"?").
fluidos:-si(se,apaga).
otros:-si(se,pincho).

run:-
dano(A,X,J),
write("El Daño puede ser: ", A," ",X, ", ", "Posible Solucion: ", J, "."),
nl.


Si(X,Y):-
write("el Auto ", X ," ", Y, " " ),
Readln(R),
R="si".

No(X,Y):-
write("El Auto ",X," ",Y ," "),
Readln(R),
R="no".


goal
run.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder