График функции
Помогите пожалуйста исправить ошибки в задачах(((((
их две.Вот первая:
uses graph;
function F(x:real):real;
begin
F:=exp(5/2*ln(abs(sqr(x)+3*sqr(x)*x)))+sqrt(x-1);
end;
var xn,xk,max,min,x,y,mx,my,dx:real;
x0,y0,i,px,py:integer;
s:string;
begin
x0:=0;
initgraph(x0,y0,'');
x0:=40;{начало экранных координат}
y0:=getmaxY div 2;
xn:=0.1;xk:=25;{интервал по Х}
mx:=(getmaxX-80)/xk;{масштаб по Х}
{найдем максимумдля масштаба по У, минимум-бесконечность}
max:=F(xn);
x:=xn;
while x<=xk do
begin
x:=x+0.01;
if F(x)>max then max:=F(x)
end;
my:=(y0-40)/max;{по У}
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/10*my),x0+3,y0-round(i/10*my));{засечки на оси Y}
line(x0-3,y0+round(i/10*my),x0+3,y0+round(i/10*my));
line(x0+round(i*mx),y0-3,x0+round(i*mx),Y0+3); {засечки на оси Х}
str(i/10:0:1,s);
{подпись оси У}
outtextXY(x0-35,y0-round(i/10*my),s);{соответственно засечкам}
outtextXY(x0-35,y0+round(i/10*my),'-'+s);
{подпись оси Х}
str(i,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); {изменение по оси Х}
y:=F(x); {график в реальных координатах}
py:=y0-round(y*my);{в экранных}
putpixel(px,py,8);
end;
readln
end.
ошибку выводит(((
и вот вторая:
uses graph;
function F(x:real):real;
begin
F:=exp(2.8*ln(abs(18*sqr(x)-ln(x))));
end;
var xn,xk,max,min,x,y,mx,my,dx:real;
x0,y0,i,px,py:integer;
s:string;
begin
writeln('vvedi interval');
readln(xk);
x0:=0;
initgraph(x0,y0,'');
x0:=40;{начало экранных координат}
y0:=getmaxY div 2;
xn:=0.1;
mx:=(getmaxX-80)/xk;{масштаб по Х}
{найдем максимумдля масштаба по У, минимум-бесконечность}
max:=F(xn);
x:=xn;
while x<=xk do
begin
x:=x+0.01;
if F(x)>max then max:=F(x)
end;
my:=(y0-40)/max;{по У}
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/10*my),x0+3,y0-round(i/10*my));{засечки на оси Y}
line(x0-3,y0+round(i/10*my),x0+3,y0+round(i/10*my));
line(x0+round(i*mx),y0-3,x0+round(i*mx),Y0+3); {засечки на оси Х}
str(i/10:0:1,s);
{подпись оси У}
outtextXY(x0-35,y0-round(i/10*my),s);{соответственно засечкам}
outtextXY(x0-35,y0+round(i/10*my),'-'+s);
{подпись оси Х}
str(i,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); {изменение по оси Х}
y:=F(x); {график в реальных координатах}
py:=y0-round(y*my);{в экранных}
putpixel(px,py,8);
end;
readln
end.
эта вроде показывает график,но мне нужно чтоб я интервал графика сама вводила,а здесь тока одну переменную могу ввести,при вводе второй ошибку показывает((((((((((((((((((
Пожалуйстааааааааааааааааа,очень надо
Помогите пожалуйста исправить ошибки в задачах(((((
их две.Вот первая:
uses graph;
function F(x:real):real;
begin
F:=exp(5/2*ln(abs(sqr(x)+3*sqr(x)*x)))+sqrt(x-1);
end;
var xn,xk,max,min,x,y,mx,my,dx:real;
x0,y0,i,px,py:integer;
s:string;
begin
x0:=0;
initgraph(x0,y0,'');
x0:=40;{начало экранных координат}
y0:=getmaxY div 2;
xn:=0.1;xk:=25;{интервал по Х}
mx:=(getmaxX-80)/xk;{масштаб по Х}
{найдем максимумдля масштаба по У, минимум-бесконечность}
max:=F(xn);
x:=xn;
while x<=xk do
begin
x:=x+0.01;
if F(x)>max then max:=F(x)
end;
my:=(y0-40)/max;{по У}
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/10*my),x0+3,y0-round(i/10*my));{засечки на оси Y}
line(x0-3,y0+round(i/10*my),x0+3,y0+round(i/10*my));
line(x0+round(i*mx),y0-3,x0+round(i*mx),Y0+3); {засечки на оси Х}
str(i/10:0:1,s);
{подпись оси У}
outtextXY(x0-35,y0-round(i/10*my),s);{соответственно засечкам}
outtextXY(x0-35,y0+round(i/10*my),'-'+s);
{подпись оси Х}
str(i,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); {изменение по оси Х}
y:=F(x); {график в реальных координатах}
py:=y0-round(y*my);{в экранных}
putpixel(px,py,8);
end;
readln
end.
ошибку выводит(((
и вот вторая:
uses graph;
function F(x:real):real;
begin
F:=exp(2.8*ln(abs(18*sqr(x)-ln(x))));
end;
var xn,xk,max,min,x,y,mx,my,dx:real;
x0,y0,i,px,py:integer;
s:string;
begin
writeln('vvedi interval');
readln(xk);
x0:=0;
initgraph(x0,y0,'');
x0:=40;{начало экранных координат}
y0:=getmaxY div 2;
xn:=0.1;
mx:=(getmaxX-80)/xk;{масштаб по Х}
{найдем максимумдля масштаба по У, минимум-бесконечность}
max:=F(xn);
x:=xn;
while x<=xk do
begin
x:=x+0.01;
if F(x)>max then max:=F(x)
end;
my:=(y0-40)/max;{по У}
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/10*my),x0+3,y0-round(i/10*my));{засечки на оси Y}
line(x0-3,y0+round(i/10*my),x0+3,y0+round(i/10*my));
line(x0+round(i*mx),y0-3,x0+round(i*mx),Y0+3); {засечки на оси Х}
str(i/10:0:1,s);
{подпись оси У}
outtextXY(x0-35,y0-round(i/10*my),s);{соответственно засечкам}
outtextXY(x0-35,y0+round(i/10*my),'-'+s);
{подпись оси Х}
str(i,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); {изменение по оси Х}
y:=F(x); {график в реальных координатах}
py:=y0-round(y*my);{в экранных}
putpixel(px,py,8);
end;
readln
end.
эта вроде показывает график,но мне нужно чтоб я интервал графика сама вводила,а здесь тока одну переменную могу ввести,при вводе второй ошибку показывает((((((((((((((((((
Пожалуйстааааааааааааааааа,очень надо
