ese6x
programma in turbo pascal v.7
program esex6; uses crt,graph; var a,c,x,y:integer;
procedure grafica; var sc,tp:integer; drive:string; begin sc:=0; tp:=0; drive:='c:/tp/bgi'; initgraph(sc,tp,drive); end;
procedure curva1(x,y,raggio,passo,colore:integer); var rad:real; seno,coseno,a,angolo:integer; begin angolo:=0; setcolor(colore); for a:=1 to 720 do begin rad:=angolo*3.14/180; seno:=round(raggio*sin(rad)); coseno:=round(raggio*cos(rad)); putpixel(a,y+seno,colore); putpixel(a,y+coseno,colore+1); angolo:=angolo+passo; end; end;
procedure curva2(x,y,raggio,passo,colore:integer); var rad:real; seno,coseno,a,angolo:integer; begin angolo:=0; setcolor(colore); for a:=1 to 720 do begin rad:=angolo*3.14/180; seno:=round(raggio*sin(rad)); coseno:=round(raggio*cos(rad)); setcolor(colore) ; line(a,y,a,y+seno); setcolor(colore+1); line(a,y,a,y+coseno); angolo:=angolo+passo; end; end;
begin clrscr; grafica; curva1(10,100,50,1,1) ; readln; curva1(10,300,100,1,2); readln; curva2(10,100,50,1,1); readln; closegraph; end.
simile con gnuplot
plot sin(x),cos(x)
pause -1
replot sin(x) w impulses 2,cos(x) w impulses 3
pause -1