Выбрался к винде.. Что-то не то....
program sincos;
var x1,x2,y1,y2,a,b,c,cos,sin:real;
i:integer;
begin
x1:=0;
y1:=0;
x2:=100;
y2:=100;
a:=abs(trunc(x1-x2));//катит у
b:=abs(trunc(y1-y2));//катит х
c:=sqrt(a*a+b*b);//гипотенуза
cos:=b/c;//cosB
sin:=a/c;//sinB угол против стороны У
for i:=-2 to 2 do begin
x1:=x1+cos*i;//
y1:=y1+sin*i;// Переносим точки, так
x2:=x2+cos*i;// чтобы линия была параллельна...
y2:=y2+sin*i;//
DrawLine(trunc(x1),trunc(y1),trunc(x2),trunc(y2));
end;
repaint;
delay(3000);
x1:=100;
y1:=100;
x2:=0;
y2:=100;
a:=abs(trunc(x1-x2));//катит у
b:=abs(trunc(y1-y2));//катит х
c:=sqrt(a*a+b*b);//гипотенуза
cos:=b/c;//cosB
sin:=a/c;//sinB угол против стороны У
for i:=-2 to 2 do begin
x1:=x1+cos*i;//
y1:=y1+sin*i;// Переносим точки, так
x2:=x2+cos*i;// чтобы линия была параллельна...
y2:=y2+sin*i;//
DrawLine(trunc(x1),trunc(y1),trunc(x2),trunc(y2));
end;
repaint;
delay(3000);
x1:=0;
y1:=100;
x2:=50;
y2:=50;
a:=abs(trunc(x1-x2));//катит у
b:=abs(trunc(y1-y2));//катит х
c:=sqrt(a*a+b*b);//гипотенуза
cos:=b/c;//cosB
sin:=a/c;//sinB угол против стороны У
for i:=-2 to 2 do begin
x1:=x1+cos*i;//
y1:=y1+sin*i;// Переносим точки, так
x2:=x2+cos*i;// чтобы линия была параллельна...
y2:=y2+sin*i;//
DrawLine(trunc(x1),trunc(y1),trunc(x2),trunc(y2));
end;
repaint;
delay(3000);
end;
Зато они параллельны! Это достижение)