Найти область определения, построить график - Pascal
Формулировка задачи:
Найти область определения функции D(f), ее нули, экстремумы и множества значений W(f). Построить график функции нарисовав и раметив оси координат. y=2^(x*x-3x+2)
Решение задачи: «Найти область определения, построить график»
textual
Листинг программы
uses graph;
function F(x:real):real;
begin
F:=exp(ln(2)*(x*x-3*x+2))
end;
var a,b,mx,my,min,max:real;
x,x1,x2:real;
x0,y0,i:integer;
s,s1:string;
begin
x0:=0;
initgraph(x0,y0,'');{инициализация графического режима}
a:=-1;
b:=4;{интервал по Х}
x0:=getmaxX div 4;{начало координат по Х}
mx:=x0-50;{масштаб по Х}
y0:=getmaxY-50;{начало координат по Y}
my:=(y0-40)/F(b);
line(0,y0,getmaxX,y0);{оси}
line(x0,0,x0,getmaxY);
for i:=1 to trunc(F(b)/10)+1 do{максимальное количество засечек в одну сторону}
begin
line(x0-3,y0-round(i*my*10),x0+3,y0-round(i*my*10));{засечки на оси У}
{подпись оси У}
str(i*10,s);
outtextXY(x0-35,y0-round(i*my*10),s);{соответственно засечкам}
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+round(i*mx)+5,y0+10,s);
outtextXY(x0-round(i*mx)+5,y0+10,'-'+s);
end;
{центр}
outtextXY(x0-15,y0+10,'0');
{подписи концов осей}
outtextXY(getmaxX-10,y0-10,'X');
outtextXY(x0+5,10, 'Y');
{график}
x:=a;
setcolor(12);
while x<=b do
begin
if x=a 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;
{название}
outtextXY(x0+100,10,'y=2^(x^2-3x+2)');
outtextXY(x0+100,30,'int.[-1;4]');
readln
end.
Объяснение кода листинга программы
- Используется модуль graph для работы с графикой.
- Объявляется функция F(x), которая возвращает значение типа real.
- В переменные a, b, mx, my, min, max записываются значения типа real.
- Объявлены переменные x, x1, x2 типа real и x0, y0, i типа integer.
- Инициализируется графический режим с помощью функции initgraph.
- Устанавливаются значения переменных a и b.
- Вычисляется начало координат по x и устанавливается масштаб по x и y.
- Рисуются оси координат.
- Устанавливается количество засечек на осях и их подписи.
- Выполняется отрисовка центра координат и подписи концов осей.
- Устанавливается цвет графика.
- Выполняется отрисовка графика функции y=2^(x^2-3x+2) на интервале [-1, 4].
- Выводится название графика.
- Ожидается ввод с клавиатуры, чтобы окно графики не закрывалось сразу после отображения.