Advertisement
Guest User

Untitled

a guest
May 30th, 2015
225
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.79 KB | None | 0 0
  1. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  2. %%%%%% mediahoras_aviao_menu %%%%%%%
  3. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  4.  
  5. mediahoras_aviao_menu:-findall(avioes(A,B,C,data(D,E,F),G,H,I,J),avioes(A,B,C,data(D,E,F),G,H,I,J),L),calcularmediahoras(L),write('PRESSIONE UMA TECLA PARA CONTINUAR!'),nl, read(_), menutav.
  6.  
  7.  
  8. calcularmediahoras([]):-!.
  9. calcularmediahoras([avioes(A,B,C,data(D,E,F),G,H,I,J)|Cauda]):-mediahoras(G,J,HorasMedias,N),mostraraviao(avioes(A,B,C,data(D,E,F),G,H,I,J),HorasMedias,N),calcularmediahoras(Cauda).
  10.  
  11. mediahoras(_,[],_):-!.
  12. mediahoras(HorasAcumuladas,Listavoos,HorasMedias,N):-contarelementoslista(Listavoos,N),HorasMedias is HorasAcumuladas / N.
  13.  
  14.  
  15. mostraraviao(avioes(A,B,C,data(D,E,F),G,H,I,J),HorasMedias,N):-
  16. write('ID Aviao:'),write(A),nl,
  17. write('Marca:'),write(B),nl,
  18. write('Horas Acumuladas:'),write(G),nl,
  19. write('Numero de Voos:'),write(N),nl,
  20. write('Horas Medias:'),write(HorasMedias),nl,nl.
  21.  
  22.  
  23. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  24. %%%%%% aviao_mais_velho_menu %%%%%%%
  25. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  26.  
  27.  
  28. aviao_mais_velho_menu:-findall(avioes(A,B,C,data(D,E,F),G,H,I,J),avioes(A,B,C,data(D,E,F),G,H,I,J),L),X is 99, Y is 99, Z is 9999,
  29. datavelho(L,[],data(X,Y,Z)), write('PRESSIONE UMA TECLA PARA CONTINUAR!'),nl, read(_), menutav.
  30.  
  31. datavelho([],L2,data(X,Y,Z)):-!,apresentar_avioes(L2).
  32. datavelho([avioes(A,B,C,data(D,E,F),G,H,I,J)|Cauda],L2,data(X,Y,Z)):-compara(data(D,E,F),data(X,Y,Z)),!,X1 is D, Y1 is E, Z1 is F,datavelho(Cauda,[avioes(A,B,C,data(D,E,F),G,H,I,J)],data(X1,Y1,Z1)).
  33. datavelho([avioes(A,B,C,data(D,E,F),G,H,I,J)|Cauda],L2,data(X,Y,Z)):-datavelho(Cauda,L2,data(X,Y,Z)).
  34.  
  35.  
  36. compara(data(D,M,A),data(D2,M2,A2)):- A<A2,!.
  37. compara(data(D,M,A),data(D2,M2,A2)):- A=:=A2,M<M2,!.
  38. compara(data(D,M,A),data(D2,M2,A2)):- A=:=A2,M=:=M2,D<D2,!.
  39. compara(_,_):-fail.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement