Построить график функции - Pascal ABC (14094)

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

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

помогите построить график функции x^4 - 16x^3 + 500x^2 - 8000x +32000. у меня не получается. очень срочно.

Решение задачи: «Построить график функции»

textual
Листинг программы
uses graphABC;
function F(x:real):real;
begin
F:=x*x*x*x-16*x*x*x+500*x*x-8000*x+32000
end;
var xn,xk,x,mx,dx,my:real;
    x0,y0,i:integer;
begin
x0:=50;{центр экрана}
y0:=7*windowheight div 8-40;
xn:=0;{интервал по Х}
xk:=16;
mx:=(windowwidth-80)/xk;{масштаб по Х}
my:=(y0-20)/F(0);{по У}
line(0,y0,windowwidth,y0);{оси}
line(x0,0,X0,windowheight);
for i:=1 to 16 do{максимальное количество засечек в одну сторону}
  begin
    line(x0+round(i*mx),y0-3,x0+round(i*mx),y0+3); {засечки на оси Х}
    {подпись оси Х}
    textout(x0+round(i*mx),y0+10,inttostr(i));
    line(x0-3,y0-round(i*my*5000),x0+3,y0-round(i*my*5000)); {засечки на оси Y}
    line(x0-3,y0+round(i*my*5000),x0+3,y0+round(i*my*5000));
    {подпись оси Y}
    textout(x0-45,y0-round(i*my*5000)-10,inttostr(i*5000));
    textout(x0-50,y0+round(i*my*5000)-10,inttostr(-i*5000));
  end;
{центр}
textout(x0+5,y0+10,'0');
{подписи концов осей}
textout(windowwidth-10,y0-10,'X');
textout(x0-10,10, 'Y');
{графики}
x:=xn;
dx:=0.1;
setpencolor(clBlue);
moveto(x0+round(x*mx),y0-round(F(x)*my));
while x<=xk do
 begin
  x:=x+dx; {наращиваем х}
  lineto(x0+round(x*mx),y0-round(F(x)*my));
 end;
end.

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


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

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

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