zpm_PAU.pro



%PAULINA RODRIGUEZ CARDENAS
%PROGRAMA: (ZORRO, POLLO, MAIZ). PROLOG
%INTELIGENCIA ARTIFICIAL.


seguro([]).
seguro(pollo).
seguro(maiz).
seguro(zorro).
seguro([pollo]).
seguro([maiz]).
seguro([zorro]).
seguro([zorro, maiz]).
seguro([maiz, zorro]).

muevete_der([H|T], T, Respuesta, Resultado):-
          seguro(T),
          sformat(Salida,'MUEVETE ~w a la derecha',H),
          write(Salida),write('\n'),          
          append(Respuesta, [H], Resultado),
          write(T),write('**'),writeln(Resultado).
          

muevete_izq([H|T], T, Respuesta, Resultado):-
          sformat(Salida,'MUEVETE ~w a la izkierda',H),
          write(Salida),write('\n'),
          append(Respuesta, [H], Resultado), 
          write(Resultado),write('**'),writeln(T).

empieza([],_):-!.

empieza([H|T],Respuesta):-
          seguro(T),
          seguro(Respuesta),
          %write('ahora empesare a mover a la derecha'),
          muevete_der([H|T],ColaD, Respuesta, Resultado),
          %write(ColaD),
          %write('**'),
          empieza(ColaD, Resultado).

empieza(Lista,Respuesta):-
          writeln(' =( <---'),           
          muevete_izq(Respuesta, ColaI, Lista, Resultado),
          %write('******'),          
          %writeln(ColaI),          
          %writeln(Resultado),
          empieza(Resultado, ColaI).
                        
checa_lista([H|T], Respuesta):-
                 seguro(T),
                 %writeln('Ahora es seguro puedes entrar =)'),
                 empieza([H|T],[]).

checa_lista([H|T], RESPUESTA):-
              seguro(Respuesta), 
              writeln('MUEVE EL PRIMERO A LA COLA ANDALE'),
              append(T,[H],ColaD),
              writeln(ColaD),
              inicio(ColaD).
 
inicio(Lista):- 

            checa_lista(Lista,[]).