Загрузка данных


uses graphabc;

function f(x: real): real;
begin
  f := sin(x)
end;

var x, y: integer;

begin
  SetWindowSize(640, 480);

  // оси
  line(0, 240, 640, 240);
  line(320, 0, 320, 480);

  // стрелка и подпись оси x
  line(640, 240, 635, 235);
  line(640, 240, 635, 245);
  textout(635, 250, 'x');

  // засечки на оси x
  for x := 1 to 15 do
    line(x * 40, 238, x * 40, 242);

  // стрелка и подпись оси y
  line(320, 0, 315, 5);
  line(320, 0, 325, 5);
  textout(330, 5, 'y');

  // засечки на оси y
  for y := 1 to 11 do
    line(318, y * 40, 322, y * 40);

  // график: y_экр = 240 - 40*f((x_экр - 320)/40)
  moveto(0, trunc(-40 * f((0 - 320) / 40) + 240));
  for x := 1 to 640 do
    lineto(x, trunc(-40 * f((x - 320) / 40) + 240));
end.