Написать программу для построения графика функции - Pascal ABC

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

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

Написать программу для построения графика функции. y=sqrt(2x+6)

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

textual
Листинг программы
uses graphABC;
var x,mx,my,dx:real;
    x0,y0,xn,xk,i:integer;
begin
xn:=-3;xk:=3;
x0:=windowwidth div 2;
y0:=windowheight-50;
mx:=(x0-30)/xk;
my:=(y0-30)/sqrt(2*xk+6);
line(0,y0,windowwidth,y0);
line(x0,0,x0,windowheight);
for i:=1 to 2*xk+1 do
 begin
  line(x0+round(i*mx/2),y0-3,x0+round(i*mx/2),y0+3);
  textout(x0+round(i*mx/2),y0+10,floattostr(i/2));
  line(x0-round(i*mx/2),y0-3,x0-round(i*mx/2),y0+3);
  textout(x0-round(i*mx/2),y0+10,floattostr(-i/2));
  line(x0-3,y0-round(i*my/2),x0+3,y0-round(i*my/2));
  textout(x0-30,y0-round(i*my/2),floattostr(i/2));
  line(x0-3,y0+round(i*my/2),x0+3,y0+round(i*my/2));
  textout(x0-30,y0+round(i*my/2),floattostr(-i/2));
 end;
textout(x0+5,y0+10,'0');
textout(windowwidth-20,y0-20,'X');
textout(x0+5,10,'Y');
x:=xn;
dx:=0.01;
setpencolor(clRed);
moveto(x0+round(x*mx),y0-round(sqrt(2*x+6)*my));
while x<=xk do
 begin
  lineto(x0+round(x*mx),y0-round(sqrt(2*x+6)*my));
  x:=x+dx;
 end;
setfontcolor(clRed);
setfontsize(12);
textout(20,20,'График функции y=sqrt(2x+6)');
textout(20,40,'на интервале [-3;3]');
end.

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

  1. Используется библиотека graphABC.
  2. Переменные x, mx, my, dx определены.
  3. Заданы начальные значения x0, y0, xn, xk, i.
  4. Вычисляются значения mx и my.
  5. Строится график функции y=sqrt(2x+6).
  6. Строятся вертикальные линии для каждого значения i.
  7. Строятся горизонтальные линии для каждого значения i.
  8. Выводится текст с значениями i.
  9. Выводится текст с значениями x и y.
  10. Вычисляется новое значение x.
  11. Устанавливается цвет пера в красный.
  12. Строится линия между текущим значением x и y.
  13. Устанавливается цвет пера в красный.
  14. Выводится текст с заголовком графика.
  15. Выводится текст с заголовком оси X.
  16. Выводится текст с заголовком оси Y.
  17. Вычисляется новое значение x.
  18. Строится линия между текущим значением x и y.
  19. Устанавливается цвет пера в красный.
  20. Выводится текст с нулевым значением.

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

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