Надо построить график зависимости составив программу. - Pascal ABC

Узнай цену своей работы

Формулировка задачи:

а) y(x)= 0,5x * cos2x на промежутке [-12;12]; б) y(x)= 8sinx * sin2x на промежутке [-15;15]. Заранее спасибо.

Решение задачи: «Надо построить график зависимости составив программу.»

textual
Листинг программы
uses graphABC;
function F(x:real):real;
begin
F:=8*sin(2*x);
end;
var xn,xk,x,y,mx,my,dx:real;
    x0,y0,i,px,py:integer;
    s:string;
begin
x0:=windowwidth div 2;{центр экрана}
y0:=windowheight div 2;
xn:=-15;xk:=15;{интервал по Х}
mx:=(windowwidth-60)/(xk-xn);{масштаб по Х}
my:=(y0-40)/8;{по У}
setpencolor(clBlack);{цвет линий}
line(0,y0,windowwidth,y0);{оси}
line(x0,0,X0,windowheight );
for i:=1 to 15 do{максимальное количество засечек в одну сторону}
  begin
    line(x0+round(i*mx),y0-3,x0+round(i*mx),Y0+3); {засечки на оси Х}
    line(x0-round(i*mx),y0-3,x0-round(i*mx),Y0+3);
    {подпись оси Х}
    str(i,s);
    textout(x0+round(i*mx)-15,y0+10,s);
    textout(x0-round(i*mx),y0+10,'-'+s);
    line(x0-3,y0-round(i*my),x0+3,y0-round(i*my));
    line(x0-3,y0+round(i*my),x0+3,y0+round(i*my));
    textout(x0-15,y0-round(i*my),s);
    textout(x0-15,y0+round(i*my),'-'+s);
  end;
{центр}
textout(x0+5,y0+10,'0');
{подписи концов осей}
textout(windowwidth-10,y0-10,'X');
textout(x0-10,10, 'Y');
//setpencolor(8);
{график}
x:=xn;
dx:=0.001;
while x<=xk do
   begin
     x:=x+dx; {наращиваем х}
     px:=x0+round(x*mx); {изменение по оси Х}
     y:=F(x); {график в реальных координатах}
     py:=y0-round(y*my);{в экранных}
     putpixel(px,py,8);
   end;
textout(60,20,'График функции y=8sin2x');
end.

Объяснение кода листинга программы

  1. Объявлены переменные: xn, xk, x, y, mx, my, dx, x0, y0, i, px, py, s, windowwidth, windowheight.
  2. Задаются значения переменных x0, y0, xn, xk, mx, my, dx.
  3. Строятся оси координат.
  4. Строятся засечки на оси Х.
  5. Строятся подписи оси Х.
  6. Строятся засечки на оси У.
  7. Строятся подписи оси У.
  8. Строятся центры осей.
  9. Строятся подписи концов осей.
  10. Задаются начальные значения переменных x, px, y, py.
  11. Запускается цикл по наращиванию x от xn до xk с шагом dx.
  12. В каждой итерации цикла вычисляется значение y по формуле F(x), а также обновляются значения переменных px и py.
  13. В каждой итерации цикла на экране рисуется точка по координатам (px, py).
  14. По окончании цикла выводится текст График функции y=8sin2x.

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

5   голосов , оценка 4.6 из 5
Похожие ответы