Модуль Graph: Вывести в координатных осях график, заданный функцией - Pascal ABC
Формулировка задачи:
Вывести в координатных осях график, заданный функцией
Решение задачи: «Модуль Graph: Вывести в координатных осях график, заданный функцией»
textual
Листинг программы
uses graphABC; function F(t:real):real; begin F:=t*sin(4*t)+5*exp(-0.5*t); end; var xc,yc,x,y,n,i:integer; r,t,max,min,z,mx,my:real; s:string; begin max:=F(0); min:=max; t:=0; while t<=2*pi do begin r:=F(t); if r>max then max:=r; if r<min then min:=r; t:=t+0.01; end; if max>abs(min) then z:=max else z:=abs(min); mx:=(windowwidth-50 )/(2*pi); if min<0 then yc:=round(windowheight*max/(max+abs(min))) else yc:=windowheight-40; my:=(yc-20)/z; xc:=30; line(xc,yc,windowwidth-10,yc); line(xc,0,xc,windowheight); textout(xc-15,yc,'0'); if z>2*pi then n:=trunc(z)+1 else n:=trunc(2*pi)+1; for i:=1 to n do begin line(xc+round(i*mx),yc-3,xc+round(i*mx),yc+3); line(xc-3,yc-round(i*my),xc+3,yc-round(i*my)); line(xc-3,yc+round(i*my),xc+3,yc+round(i*my)); str(i,s); textout(xc+round(i*mx),yc+10,s); textout(xc-15,yc-round(i*my),s); textout(xc-15,yc+round(i*my),s); end; t:=0; while t<=2*pi do begin t:=t+0.001; r:=F(t); x:=xc+round(t*mx); y:=yc-round(r*my); setpixel(x,y,clRed); end; textout(100,10,'График функции y=tsin(4t)+5exp(-0.5t)'); textout(150,30,'на интервале [0;2pi]'); end.
Объяснение кода листинга программы
- Объявлены переменные:
- xc, yc, x, y, n, i (целые числа)
- r, t, max, min, z, mx, my (вещественные числа)
- s (строка)
- windowwidth, windowheight (задаются в настройках модуля GraphABC)
- Инициализированы переменные:
- max, min, t, z, mx, my (значениями функций и констант)
- Задается цикл, который выполняется, пока значение переменной t не станет больше 2π.
- Внутри цикла выполняются следующие действия:
- Вычисляется значение функции F(t)
- Если значение F(t) больше max, то max присваивается новое значение
- Если значение F(t) меньше min, то min присваивается новое значение
- Увеличивается значение переменной t на 0.01
- После цикла вычисляется значение z и устанавливается масштаб для осей x и y
- Строятся линии, которые ограничивают график функции
- Строятся метки с числовыми значениями на оси x и y
- Строятся точки на графике функции
- Выводится текст с описанием функции и интервала, на котором строится график
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д