Построить график функции F(x,y)=x^3-27(x-y)^2=0 - Pascal ABC
Формулировка задачи:
Можете помочь переделать функцию на паскаль АВС...
F(x,y)=x^3-27(x-y)^2=0 Построить график указанной функции.
Решение задачи: «Построить график функции F(x,y)=x^3-27(x-y)^2=0»
textual
Листинг программы
program EvgeniiSp; uses GraphABC, Events; //------- Solution ------// function Solution(x: real): real; begin result:=-(sqrt(power(x,3)/27)-x); // åñëè Гµn - îòðГ*öèòåëåГ*, ГІГ® ГЎГ°Г*ГІГј abs(x); end; //-------- Drawing_graph ------// procedure Drawing_graph(color: integer); const dx = 0.1; xn = 1; xk = 50; var ww,wh,xs,ys: integer; x,y,ymax,xmax: real; //------- Conversion_y ------// function LogicToScreen_y(y: real): real; begin result:=(wh div 2)*y/ymax; end; //------- Conversion_x ------// function LogicToScreen_x(x: real): real; begin result:=(ww div 2)*x/xmax; end; begin y:=0; SetPenWidth(1); ww:=WindowWidth; wh:=WindowHeight; SetPenColor(clGray); TextOut((ww div 2)-10,(wh div 2)+4,'0'); moveTo(0,wh div 2); lineTo(ww,wh div 2); TextOut(ww-12,(wh div 2)+3,'X'); moveTo(ww div 2,0); lineTo(ww div 2,wh); TextOut((ww div 2)+5,3,'Y'); //------------------------- x:=xn; ymax:=0; xmax:=0; while x <= xk do begin y:=Solution(x); if abs(y) > ymax then ymax:=abs(y); if abs(x) > xmax then xmax:=abs(x); x:=x+dx; end; //------------------------- x:=xn; SetPenWidth(1); SetPenColor(color); while x <= xk do begin y:=Solution(x); ys:=Round(LogicToScreen_y(y)); xs:=Round(LogicToScreen_x(x)); if x = xn then moveTo((ww div 2)+xs,(wh div 2)-ys) else lineTo((ww div 2)+xs,(wh div 2)-ys); x:=x+dx; end; Redraw; end; //-------- Resize ------// procedure Resize; begin ClearWindow; Drawing_graph(clRed); Redraw; end; begin SetWindowCaption('ГѓГ°Г*ГґГЁГЄ ГґГіГ*êöèè.'); SetWindowSize(700,500); LockDrawing; CenterWindow; Drawing_graph(clRed); OnResize:=Resize; end.