Построисть график функции y=x^2/(x-1)


Добавил:DMT
Дата создания:4 декабря 2007, 0:02
Дата обновления:4 декабря 2007, 0:10
Просмотров:16852 последний сегодня, 5:15
Комментариев: 0

Строим график функции. Выводятся оси координат, причем масштаб по оси x и по оси y выбирается одинаковый.  График выводится для x из отрезка [-5,5] .

1) Построить график функции: функция

#include <graphics.h>

#include <math.h>

#include <conio.h>

#include <stdio.h>

float xmin=-5, xmax=5;

float ymin=-5, ymax=5;

float hx ;

float xdens, ydens;

int ex(float x,float y)

{return (int) ((x-xmin)/xdens);}

int ey(float x,float y)

{return (int) ((ymax-y)/ydens);}

float f(float x) {return (float)((x*x)/(x-1));}

void main()

{

int graphdriver= DETECT, graphmode, n=100;

float x,y;

initgraph(&graphdriver,&graphmode,"");

xdens=(xmax-xmin)/getmaxx();

ydens=(ymax-ymin)/getmaxy();

hx=(xmax-xmin)/n;

setcolor(LIGHTGRAY);

line(ex(xmin,0), ey(xmin,0), ex(xmax,0), ey(xmax,0));

line(ex(0,ymax), ey(0,ymax), ex(0,ymin), ey(0,ymin));

gotoxy(39,2); printf("Y");

gotoxy(78,16); printf("X");

gotoxy(39,16); printf("0");

line(ex(0,ymax),ey(0,ymax),ex(0,ymax)-3,ey(0,ymax)+8);

line(ex(0,ymax),ey(0,ymax),ex(0,ymax)+3,ey(0,ymax)+8);

line(ex(xmax,0),ey(xmax,0),ex(xmax,0)-8,ey(xmax,0)+3);

line(ex(xmax,0),ey(xmax,0),ex(xmax,0)-8,ey(xmax,0)-3);

setcolor(WHITE);

for(x=xmin;x<-2;x+=hx)

line(ex(x,f(x)),ey(x,f(x)), ex(x+hx, f(x+hx)), ey(x+hx, f(x+hx)));

for(x=-2+hx;x<xmax;x+=hx)

line(ex(x,f(x)),ey(x,f(x)), ex(x+hx, f(x+hx)), ey(x+hx, f(x+hx)));

gotoxy (1 , 1);

printf("function x^2/(x-1)");

getch();

closegraph ();

}

up