Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
49
Добавлен:
28.12.2016
Размер:
1.89 Кб
Скачать
#include "stdio.h"
#include "conio.h"
#include "math.h"
#include "dos.h"
#include "graphics.h"
#include "string.h"
int Xmax, Ymax, X0, X1, Y0, Y1;
float R, Rmax=0.;
void drawf(int N)
{  double x, dx=(16*3.14-3*3.14/2)/N;
   int i;
  for (i=0, x=(3*3.14/2); i<N; i++, x+=dx)
	{
	  R=(float)(pow((cos(x/4)),2.0)+sqrt(x));
	  if(Rmax<R) Rmax=R;
	}
  for (i=0, x=(3*3.14/2); i<N; i++, x+=dx)
	{
	  R=(float)(pow((cos(x/4)),2.0)+sqrt(x));
	  putpixel(i+X0,(Y0-(int)(R/Rmax*(float)(Y0-Y1)))/2-5,GREEN);
	}
}

void main()
{  int i, N;
  clrscr();
   int driver, mode;   
    driver = DETECT;                 
    initgraph(&driver,&mode,"c:\\borlandc\\bgi");
  Xmax=getmaxx(); Ymax=getmaxy(); 
  X0=40;          Y0=Ymax-30;     
  X1=Xmax-30;     Y1=30;         
  N = X1-X0;                    
  setlinestyle(0,1,3);            
  setcolor(BLUE);
  rectangle(2,0,Xmax-2,Ymax-15);  
  setfillstyle(SOLID_FILL, BLACK);
  floodfill(20,20, BLUE);
  drawf(N);                    
  setlinestyle(0,1,1);            
  line(X0+20,   Y0-5, X0+20,   Y1-20);
  line(X0-2,   Y0-220, X1+15, Y0-220);
  outtextxy(X0+40,Y1+40,"cos^2(x/4)+sqrt(x)");   
  outtextxy(X1+3,Y0-219,"x");
 for(i=1;i<23;++i)                
	line(X0+20,Y0-i*20,X0+25,Y0-i*20);
 for(i=0;i<29;++i)
	line(X0+20*i,Y0-220,X0+20*i,Y0-225);
 outtextxy(X0+23,Y0-218,"0");
 outtextxy(X0+20*5,Y0-218,"4");
 outtextxy(X0+20*9,Y0-218,"6");
 outtextxy(X0+20*13,Y0-218,"8");
 outtextxy(X0+20*17,Y0-218,"10");
 outtextxy(X0+20*21,Y0-218,"12");
 outtextxy(X0+20*25,Y0-218,"14");
  char cRmax[10];					
  char str[24];
  strcpy(str,"MAX(f(x)) = ");
  strcat(str,cRmax);
  setcolor(BLACK);
  rectangle(X0+25,Y0-5,X0+200,Y0+10);  
  setfillstyle(SOLID_FILL, LIGHTCYAN);   
  floodfill(X0+30,Y0, BLACK);
  setcolor(WHITE);
  outtextxy(X0+30,Y0,str);
  getch();
  closegraph();
}

Соседние файлы в папке ОргЭВМ(лабы 1-5)