funzioni trigonometriche
/* coseno1.pro */ /* Questo programma richiede una scheda EGA o CGA */ /* Non è supportata la scheda Hercules! */ /* disegna COSINUSOIDE con LINE e DOT */ domains intero= integer Predicates disegna(Intero,Intero,Intero) Goal graphics(1,7,1),attribute(1), line(16000,1000,16000,32000,7), disegna(16000,1000,1440). Clauses disegna(Riga1,Colonna1,N):- N>0,!, Colore=2, dot(Riga1,Colonna1,Colore), Riga2=Riga1+100*cos(N*3.14/180), Colonna2=Colonna1+20, N2=N-1, disegna(Riga2,Colonna2,N2).
/* sencos2.pro */ /* Questo programma richiede una scheda EGA o CGA */ /* Non è supportata la scheda Hercules! */ /* disegna COSINUSOIDE e sinusoide piena con Line */ domains intero= integer Predicates disegna(Intero,Intero,Intero) Goal graphics(1,7,1),attribute(1), write("\tCosinusoide-Sinusoide\n\n"), line(16000,1000,16000,32000,7), line(1000,1000,30000,1000,7), disegna(16000,1000,1440). Clauses disegna(Riga1,Colonna1,N):- N>0,!, Colore=2, Riga2=16000+round(5000*sin(N*3.14/180)), Riga3=16000+round(5000*cos(N*3.14/180)), line(16000,Colonna1,Riga3,Colonna1,7), line(16000,Colonna1,Riga2,Colonna1,Colore), Colonna2=Colonna1+20, N2=N-1, disegna(Riga1,Colonna2,N2). disegna(_,_,_).