Консультация № 145314
28.09.2008, 16:53
0.00 руб.
0 1 1
Уважаемые эксперты! помогите пожалуйста решить задачу.
Задания: Нарисовать график с координатными осями и нумерацией следующей функции : y = 1-x, х- в 3 степени. заранее благодарен.

Обсуждение

давно
Профессор
401888
1232
28.09.2008, 22:02
общий
28.09.2008, 22:45
это ответ
Здравствуйте, Ильин Дмитрий!
Программа построения графика в приложении.

Приложение:
uses graph,crt;
function F(x:real):real;
begin
F:=1-x*x*x;
var
gd,gm:integer;
x2:real;
x,y,x1,y1,i:integer;
ErrorCode : Integer;
procedure MyGraphInit;{Инициализация графического режима}
begin
gd:=Detect;
InitGraph(gd,gm, '');
ErrorCode := GraphResult;
if ErrorCode <> grOk then
begin
writeln('InitGraph Error: ',GraphErrorMsg(ErrorCode));
Writeln('Program is aborted!');
Halt(1);
end;
end;

begin
clrscr;
MyGraphInit;
{--------ВЫВОД КООРДИТАТНЫХ ОСЕЙ----------}
setlinestyle (0,0,1);
line(300,470,300,10);{ось У}
line(180,250,430,250); {ось Х}
line(300,10,295,30); {стрелки на оси У}
line(300,10,305,30);
line(430,250,410,245);{стрелки на оси Х}
line(430,250,410,255);
outtextXY(305,255,'0'); {подписи по оси У}
outtextXY(285,195,'5');
outtextXY(280,155,'10');
outtextXY(280,115,'15');
outtextXY(280,75,'20');
outtextXY(280,35,'25');
outtextXY(285,10,'Y');
outtextXY(280,280,'-5');
outtextXY(275,320,'-10');
outtextXY(275,360,'-15');
outtextXY(275,400,'-20');
outtextXY(275,440,'-25');
for i:=1 to 11 do
line(295,50+40*(i-1),305,50+40*(i-1));{засечки по оси Y}

outtextXY(195,260,'-3');{подписи по оси Х}
outtextXY(225,260,'-2');
outtextXY(255,260,'-1');
outtextXY(335,260,'1');
outtextXY(365,260,'2');
outtextXY(395,260,'3');
outtextXY(430,260,'X');
for i:=1 to 7 do
line(210+30*(i-1),245,210+30*(i-1),255);{засечки по оси Х}

x:=0; y:=0; x1:=0; y1:=0; x2:= 0;{обнуляем начальные значения}
setcolor(10);{устанавливаем зеленый цвет}

{-------ПОСТРОЕНИЕ ГРАФИКА Ф-ИИ------------}
for i:=0 to 460 do
begin
x2:=i/50-3; {шаг и смещение по оси Х в минусы}
y:=round(270 - 30*F(x2));{значение Y с учетом начала координат и масштаба по оси Х}
x:=trunc(300 + 40*x2);{значение X с учетом начала координат и масштаба по оси Y}
if i > 0 then
line(x1,y1,x,y);{собственно график}
x1:=x;
y1:=y;
end;
readln;
closegraph;
end.
Форма ответа