Построить график функции корень квадратный из x - Pascal
Формулировка задачи:
Помогите составить график функции корень квадратний из x
Решение задачи: «Построить график функции корень квадратный из x»
textual
Листинг программы
uses graph; function F(x:real):real; begin F:=sqrt(x); end; var xn,xk,x,y1,y2,mx,my,dx:real; x0,y0,i,px,py1,py2:integer; s:string; begin x0:=0; initgraph(x0,y0,''); x0:=30;{правый край экрана} y0:=getmaxY div 2;{центр} xn:=0;xk:=25;{интервал по Х} mx:=(getmaxX-2*x0)/(xk-xn);{масштаб по Х} my:=(y0-20)/(F(xk));{по У} setbkcolor(15);{цвет фона} setcolor(8);{цвет линий} line(0,y0,getmaxX,y0);{оси} line(x0,0,X0,getmaxY); for i:=1 to round(xk)+1 do{максимальное количество засечек в одну сторону} begin line(x0-3,y0+round(i*my),x0+3,y0+round(i*my));{засечки на оси У} line(x0+round(i*mx),y0-3,x0+round(i*mx),Y0+3); {засечки на оси Х} line(x0-round(i*mx),y0-3,x0-round(i*mx),Y0+3); str(i,s); {подпись оси У} outtextXY(x0-15,y0+round(i*my),'-'+s);{соответственно засечкам} outtextXY(x0-15,y0-round(i*my),s); {подпись оси Х} outtextXY(x0+round(i*mx),y0+10,s); outtextXY(x0-round(i*mx),y0+10,'-'+s); end; {центр} outtextXY(x0+5,y0+10,'0'); {подписи концов осей} outtextXY(getmaxX-10,y0-10,'X'); outtextXY(x0-10,10, 'Y'); setcolor(8); {график} x:=xn; dx:=0.001; while x<=xk do begin x:=x+dx; {наращиваем х} px:=x0+round(x*mx); {изменение по оси Х} y1:=F(x); {график в реальных координатах} py1:=y0-round(y1*my);{в экранных} putpixel(px,py1,8); y2:=-F(x); py2:=y0-round(y2*my); putpixel(px,py2,8); end; readln end.
Объяснение кода листинга программы
- Используется библиотека graph для создания графика.
- Определяется функция F, которая вычисляет корень квадратный из x.
- Определяются переменные xn, xk, x, y1, y2, mx, my, dx: real; var x0, y0, i, px, py1, py2: integer; s: string;
- Инициализируется график с координатами x0, y0.
- Вычисляется масштаб по оси X (mx) и по оси Y (my).
- Строятся оси X и Y.
- Строятся засечки на оси У для каждого i от 1 до round(xk)+1.
- Строятся засечки на оси Х для каждого i от 1 до round(xk)+1.
- Строится центр графика.
- Подписываются оси X и Y.
- График строится путем последовательного наращивания x от xn до xk с шагом dx.
- Для каждой точки на графике (x,y) вычисляются координаты пикселя (px, py1 или py2) для отображения на экране.
- Выводится значение i при построении каждой засечки.
- График отображается на экране.
- Заканчивается программа.