RE:nesecito que den una idea de como hacer este ej
hechale un vistaso a esto y dime si te cuadra......
%hecho(protesta_de_baragua,[maceo],cuba,fecha(15,marzo,1878)).
%hecho(desembarco_granma,[fidel],cuba,fecha(2,dicimbre,1956)).
contrasena(ee,ee).
comenzar():-write('Seleccione la opcion a realizar: '),nl,
write('Para responder cuestionario p : '), nl,
write('Para consultar la base de datos introducir c : '),nl,
write('Para modificar base de datos introducir m : '),
read(O), opcion(O).
opcion(O):- O=:="p",preguntar(1),!.
opcion(O):- O=:="c", write('entre el hecho_historico:'),read(N),
write('entre el protagonista:'),read(LP),
write('entre el lugar:'),read(L),
write('entre la fecha:'),read(F),
consulta(N,LP,L,F),!.
opcion(O):- O=:="m",modificar,!.
opcion(O).
modificar:- write('Entrar Usuario : '), read(U), write('Entrar Contrasena : '), read(C), contrasena(U,C),!, write('Si desea insertar entre i,si desea eliminar entre e : '), read(A), verif(A).
verif(A):- A=:="i",insertar(hecho1(H,P,L,F)),!.
verif(A):- A=:="e", eliminar(hecho1(H,P,L,F)),!.
verif(A):- write('Error en dato, entre nuevo valor: '), read(E), verif(E).
insertar(hecho1(H,[P],L,F(D,M,A))):-write('entre el hecho_historico:'),read(H),
write('entre el protagonista:'),read(P),
write('entre el lugar:'),read(L),
write('entre la fecha:'),read(F),
asserta(hecho1(H,P,L,F)).
eliminar(S):- write('entre el hecho_historico:'),read(H),
write('entre el protagonista:'),read(P),
write('entre el lugar:'),read(L),
write('entre el fecha:'),read(F),
retract(hecho1(H,P,L,F)).
consulta(N,LP,L,F):- hecho1(N,LP,L,F).
preguntar(0).
preguntar(R):-R=1,!,preguntar1().
preguntar(R):-R=2,!,preguntar2().
preguntar(R):-R=3,!,preguntar3().
preguntar(R):-R=4,!,preguntar4().
preguntar(R):-R=5,!,preguntar5().
preguntar(R):-R=6,!,preguntar6().
preguntar(R):-R=7,!,preguntar7().
preguntar(R):-R=8,!,preguntar8().
preguntar(R):-R=9,!,preguntar9().
preguntar(R):-R=10,!,preguntar10().
preguntar1():-write('Quien hizo protesta de baragua:'),read(P),hecho1(protesta_de_baragua,P,_,_),!,write(yes),nl,preguntar(2).
preguntar1():-write(no),nl,preguntar(2).
preguntar2():-write('Que ocurrio el 15 de marzo de 1878:'),read(H),hecho1(H,_,_,fecha(15,marzo,1878)),!,write(yes),nl,preguntar(3).
preguntar2():-write(no),nl,preguntar(3).
preguntar3():-write('Donde ocurrio protesta_de_baragua:'),read(L),hecho1(protesta_de_baragua,_,L,_),!,write(yes),nl,preguntar(4).
preguntar3():-write(no),nl,preguntar(4).
preguntar4():-write('Que hizo maceo el 15 de marzo de 1878:'),read(H),hecho1(H,[maceo],_,fecha(15,marzo,1878)),!,write(yes),nl,preguntar(5).
preguntar4():-write(no),nl,preguntar(5).
preguntar5():-write('En que mes fue la protesta_de_baragua:'),read(M),hecho1(protesta_de_baragua,_,_,F(_,M,_)),!,write(yes),nl,preguntar(6).
preguntar5():-write(no),nl,preguntar(6).
preguntar6():-write(' El desembarco del granma ocurrio en cuba:'),read(L),L=:="y",!,write(correcto),nl,preguntar(7).
preguntar6():-write(incorrecto),nl,preguntar(7).
preguntar7():-write('fidel hizo protesta_de_baragua:'),read(H),H=:="n",!,write(correcto),nl,preguntar(8).
preguntar7():-write(incorrecto),nl,preguntar(8).
preguntar8():-write('Que hizo fidel en cuba:'),read(H),hecho1(H,[fidel],cuba,_),!,write(yes),nl,preguntar(9).
preguntar8():-write(no),nl,preguntar(9).
preguntar9():-write('Cuando ocurrio el desembarco del granma:'),read(F),hecho1(desembarco_granma,_,_,F),!,write(yes),nl,preguntar(10).
preguntar9():-write(no),nl,preguntar(10).
preguntar10():-write('Marti participo en el desembarco del granma:'),read(H) ,H=:="n",!,write(correcto),nl,preguntar(0).
preguntar10():-write(incorrecto),nl,preguntar(0).
Solución
| ?- comenzar.
Seleccione la opcion a realizar:
Para responder cuestionario p :
Para consultar la base de datos introducir c :
Para modificar base de datos introducir m : |: "m".
Entrar Usuario : |: ee.
Entrar Contrasena : |: ee.
Si desea insertar entre i,si desea eliminar entre e : |: "i".
entre el hecho_historico:|: protesta_de_baragua.
entre el protagonista:|: [maceo].
entre el lugar:|: cuba.
entre la fecha:|: fecha(15,marzo,1878).
yes
| ?- comenzar.
Seleccione la opcion a realizar:
Para responder cuestionario p :
Para consultar la base de datos introducir c :
Para modificar base de datos introducir m : |: "m".
Entrar Usuario : |: ee.
Entrar Contrasena : |: ee.
Si desea insertar entre i,si desea eliminar entre e : |: "i".
entre el hecho_historico:|: desembarco_granma.
entre el protagonista:|: [fidel].
entre el lugar:|: cuba.
entre la fecha:|: fecha(2,dicimbre,1956).
yes
| ?- comenzar.
Seleccione la opcion a realizar:
Para responder cuestionario p :
Para consultar la base de datos introducir c :
Para modificar base de datos introducir m : |: "p".
Quien hizo protesta de baragua:|: [maceo].
yes
Que ocurrio el 15 de marzo de 1878:|: protesta_de_baragua.
yes
Donde ocurrio protesta_de_baragua:|: cuba.
yes
Que hizo maceo el 15 de marzo de 1878:|: protesta_de_baragua.
yes
En que mes fue la protesta_de_baragua:|: marzo.
yes
El desembarco del granma ocurrio en cuba:|: "y".
correcto
fidel hizo protesta_de_baragua:|: "n".
correcto
Que hizo fidel en cuba:|: desembarco_granma.
yes
Cuando ocurrio el desembarco del granma:|: fecha(2,dicimbre,1956).
yes
Marti participo en el desembarco del granma:|: "n".
correcto
yes