prolo5q

prolo5q

/* LTEST1.pro modificato da originale LTEST */
/* Questo programma richiede una scheda EGA o CGA */
/* Non Š supportata la scheda Hercules!  */
/* disegna linee varie */
domains
 intero = integer
Predicates
  crealinea
  boxlinea(Intero,Intero,Intero)
Goal 
  graphics(1,7,1),attribute(1),crealinea.
Clauses
  crealinea :- cursor(0,0), write("\t\tPROVA RIGHE\n\n"),
  	      boxlinea(1000,1000,75).
  
  boxlinea(Lriga,Lcol,N) :-
  	      N>0,!,
  	      LLcol2 = Lcol+400, N2 = N-1,
  	      line(Lriga,Lcol,30000,30000,N),
  	      Lriga2=32000-Lriga,Lcol2=32000-Lcol,
  	      line(Lriga2,Lcol,Lriga,Lcol2,N),
  	      boxlinea(Lriga,LLcol2,N2).
  boxlinea(_,_,0).

 


/* LTEST2.pro modificato da originale LTEST */
/* Questo programma richiede una scheda EGA o CGA */
/* Non Š supportata la scheda Hercules!  */
/* disegna linee varie */
domains
 intero = integer
Predicates
  crealinea
  boxlinea(Intero,Intero,Intero)
Goal 
  /* attibute(numero intero 1,2,3,4,5,6,7..) 
  assegna colore a testo */
  /* graphics(intero,intero,intero)
     modoparametro,palette,colore sfondo */
  graphics(4,5,7),attribute(5),crealinea.
Clauses
  crealinea :- cursor(0,0), write("\t\tPROVA RIGHE\n\n"),
  	      boxlinea(1000,1000,75).
  
  boxlinea(Lriga,Lcol,N) :-
  	      N>0,!,
  	      LLcol2 = Lcol+400, N2 = N-1,
  	      line(Lriga,Lcol,30000,30000,N),
  /* line(intero,intero,intero,intero,intero)
     riga1 colonna1 riga2 colonna2 colore */
  	      Lriga2=32000-Lriga,Lcol2=32000-Lcol,
  	      line(Lriga2,Lcol,Lriga,Lcol2,N),
  	      boxlinea(Lriga,LLcol2,N2).
  boxlinea(_,_,0).

 


/* LTEST3.pro modificato da originale LTEST */
/* Questo programma richiede una scheda EGA o CGA */
/* Non Š supportata la scheda Hercules!  */
/* disegna linee varie */
domains
 intero = integer
Predicates
  crealinea
  boxlinea(Intero,Intero,Intero)
  /*  ylinea, xcolonna,numero righe */
Goal 
  graphics(1,7,1),attribute(1),crealinea.
Clauses
  crealinea :- cursor(0,0), write("\t\tPROVA RIGHE\n\n"),
  	      boxlinea(1500,1400,15).
    	      
  
  boxlinea(Lriga,Lcol,N) :-
  	      N>0,!,  /* esegue per N>n.righe*/
  	      LLcol2 = Lcol+400, N2 = N-1,
  	      line(Lriga,Lcol,20000,20000,N),
  	      Lriga2=22000-Lriga,Lcol2=22000-Lcol,
  	      line(Lriga2,Lcol,Lriga,Lcol2,N),
  	      boxlinea(Lriga,LLcol2,N2).
  boxlinea(_,_,0).

 

 


/* LTEST4.pro modificato da originale LTEST */
/* Questo programma richiede una scheda EGA o CGA */
/* Non Š supportata la scheda Hercules!  */
/* disegna linee varie */
/* modificato nome alcune variabili */
domains
 intero = integer
Predicates
  crealinea
  boxlinea(Intero,Intero,Intero)
  /*  ylinea, xcolonna,numero righe */
Goal 
  graphics(1,7,1),attribute(1),crealinea.
Clauses
  crealinea :- cursor(0,0), write("\t\tPROVA RIGHE\n\n"),
  	      boxlinea(1000,1000,75).
    	      
  
  boxlinea(Lriga,Lcol,N) :-
  	      N>0,!,  /* esegue per N>n.righe*/
              YLcol2=Lcol+400, N2=N-1,
              line(Lriga,Lcol,30000,30000,N),
              YLriga2=32000-Lriga,
              LYcol2=32000-Lcol,
              line(YLriga2,Lcol,Lriga,LYcol2,N),
              boxlinea(Lriga,YLcol2,N2).
  boxlinea(_,_,0).