На экране даны 2 точки с произвольными координатами. Составить программу, которая строит между ними прямую линию, не используя при этом графические функции LINE, DRAW и т. п. Строить изображение точками — Pascal(Паскаль)

uses graph;

var
  gd, gm: Integer;

procedure _Line(x1, y1, x2, y2: Integer);
var
  x, y, h: Integer;
  k: double;
begin
  x := 0;
  y := 0;
  h := 1; { шаг между точками по X }
  k := (y2 - y1) / (x2 - x1); { угловой коэффициент линии }
  while (x1 + x) <= x2 do
  begin
    PutPixel(x1 + x, y1 + y, white);
    x := x + h;
    y := round(k * x);
  end;
end;

begin
  gd := Detect;
  InitGraph(gd, gm, 'c:\bp\bgi');
  if GraphResult <> grOk then
    halt;
  _Line(50, 50, 400, 200);
  readln;
  CloseGraph;

end.

Leave a Comment

7 + 2 =