• Написать программу, которая строит на одной координатной плоскости разным цветом графики функций y = sin(x) и y = cos(x) на промежутке Pascal ABC

    question img

Ответы 1

  • uses  graphABC;const  W = 800; H = 500; function DrawSin(x: real): real;begin  DrawSin := sin(x);end;function DrawCos(x: real): real;begin  DrawCos := cos(x);end;var  x0, y0, x, y, xLeft, yLeft, xRight, yRight, n: integer;  a, b, fmin, fmax, x1, y1, x2, y2, mx, my, dx, dy, num: real;  i: byte;  s: string;begin  SetWindowSize(W, H);  xLeft := 50;  yLeft := 50;  xRight := W - 50;  yRight := H - 50;  a := -10; b := 10; dx := 1;  fmin := -5; fmax := 5; dy := 1;  mx := (xRight - xLeft) / (b - a);  my := (yRight - yLeft) / (fmax - fmin);  x0 := trunc(abs(a) * mx) + xLeft;  y0 := yRight - trunc(abs(fmin) * my);  line(xLeft, y0, xRight + 10, y0);  line(x0, yLeft - 10, x0, yRight);  SetFontSize(12);  SetFontColor(clBlue);  TextOut(xRight + 20, y0 - 15, 'X');  TextOut(x0 - 10, yLeft - 30, 'Y');  SetFontSize(7);  SetFontColor(clRed);   n := round((b - a) / dx) + 1;  for i := 1 to n do  begin    num := a + (i - 1) * dx;    x := xLeft + trunc(mx * (num - a));    Line(x, y0 - 3, x, y0 + 3);    str(Num:0:1, s);    if abs(num) > 1E-15 then      TextOut(x - TextWidth(s) div 2, y0 + 10, s)  end;   n := round((fmax - fmin) / dy) + 1;  for i := 1 to n do  begin    num := fMin + (i - 1) * dy;    y := yRight - trunc(my * (num - fmin));    Line(x0 - 3, y, x0 + 3, y);    str(num:0:1, s);    if abs(num) > 1E-15 then      TextOut(x0 + 7, y - TextHeight(s) div 2, s)  end;  TextOut(x0 - 10, y0 + 10, '0');   x1 := a;  x2 := a;  while x1 <= b do  begin    y1 := DrawSin(x1);    y2 := DrawCos(x2);    if ((x1 >= -2*pi) and (x1 <= 2*pi)) then    begin      x := x0 + round(x1 * mx);      y := y0 - round(y1 * my);      if (y >= yLeft) and (y <= yRight) then SetPixel(x, y, clBlue);            x := x0 + round(x2 * mx);      y := y0 - round(y2 * my);      if (y >= yLeft) and (y <= yRight) then SetPixel(x, y, clGreen);          end;      x1 := x1 + 0.001;    x2 := x2 + 0.001;  endend.
    answer img
  • Добавить свой ответ

Войти через Google

или

Забыли пароль?

У меня нет аккаунта, я хочу Зарегистрироваться

How much to ban the user?
1 hour 1 day 100 years