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).