Построить график функции - Turbo Pascal

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

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

Написать программу для построения графика функции y=7x^4-14.

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

textual
Листинг программы
uses graph;
const xn=-2; {интервал и шаг по Х}
      xk=2;
function f(x:real):real;{функция}
begin
f:=7*x*x*x*x-14;
end;
var x0,y0,i:integer;
    mx,my,x:real;{масштабы по осям}
    s:string;
begin
initgraph(x0,y0,'');
x0:=getmaxX div 2;
y0:=getmaxY-100;
line(0,y0,2*x0,y0);
line(x0,0,x0,getmaxY);
outtextxy(2*x0-20,y0-20,'X');
outtextxy(x0+5,0,'Y');
outtextXY(x0+5,y0+10,'0');
mx:=(x0-30)/2;
my:=(y0-20)/f(xn);
for i:=1 to trunc(f(xn)/5)+1 do
 begin
  line(x0+round(i/2*mx),y0-3,x0+round(i/2*mx),y0+3);
  line(x0-round(i/2*mx),y0-3,x0-round(i/2*mx),y0+3);
  str(i/2:0:1,s);
  outtextXY(x0+round(i/2*mx),y0+10,s);
  outtextXY(x0-round(i/2*mx),y0+10,'-'+s);
  line(x0-3,y0-round(i*my*5),x0+3,y0-round(i*my*5));
  line(x0-3,y0+round(i*my*5),x0+3,y0+round(i*my*5));
  str(i*5,s);
  outtextXY(x0-25,y0-round(i*my*5),s);
  outtextXY(x0-35,y0+round(i*my*5),'-'+s);
 end;
x:=xn;
setcolor(12);
while x<=xk do
 begin
  if x=xn then moveto(x0+round(x*mx),y0-round(f(x)*my))
  else lineto(x0+round(x*mx),y0-round(f(x)*my));
  x:=x+0.01;
 end;
readln;
end.

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

  1. Объявлены переменные: xn, xk, f(x), x0, y0, i, mx, my, x, s.
  2. Инициализированы переменные: x0, y0, mx, my.
  3. Строятся оси координат.
  4. Вычисляется масштаб по оси Y на основе функции f(x).
  5. Задается шаг по оси X равный 2.
  6. В цикле рисуются промежуточные точки на оси Y с шагом 5.
  7. Рисуется график функции с шагом 0.01 от xn до xk.
  8. Получается ввод с клавиатуры для завершения работы программы.

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


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

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

11   голосов , оценка 4 из 5