Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <iostream>
- #include <graphics.h>
- #include <math.h>
- using namespace std;
- const int N = 80;
- int main()
- {
- initwindow(800, 600);
- float xArray[N];
- float yArray[N];
- float x2Array[N];
- float y2Array[N];
- int x0 = 150;
- int y0 = 500;
- int pX = 500;
- int pY = 400;
- int dX = 50;
- int dY = 80;
- float xMin = -4;
- float xMax = 20;
- float xMin1 = 5;
- float xMax1 = 25;
- float deltaX = (xMax - xMin) / (N - 1);
- float deltaX2 = (xMax1 - xMin1) / (N-1);
- for(int i = 0; i < N; i++)
- {
- xArray[i] = xMin + i * deltaX;
- yArray[i] = 5 * xArray[i] * xArray[i] - 3 * xArray[i] + 10;
- x2Array[i] = xMin1 + i*deltaX2;
- y2Array[i] = pow(x2Array[i], 3) - 8 * x2Array[i] + 7;
- }
- float yMin = yArray[0];
- float yMax = yArray[0];
- float yMin1 = y2Array[0];
- float yMax1 = y2Array[0];
- for(int i = 0; i < N; i++)
- {
- if(yMin > yArray[i])
- yMin = yArray[i];
- if(yMax < yArray[i])
- yMax = yArray[i];
- if(yMin1 > y2Array[i])
- yMin1 = y2Array[i];
- if(yMax1 < y2Array[i])
- yMax1 = y2Array[i];
- }
- if(yMax1 > yMax)
- yMax = yMax1;
- if(yMin1 < yMin)
- yMin = yMin1;
- float sX = (xMax1 - xMin) / pX;
- float sY = (yMax - yMin) / pY;
- //if(xMin < 0)
- //{
- //float x0Prime = x0 + (0 - xMin) / sX;
- //line(x0Prime, y0, x0Prime, y0 - pY);
- //}
- /*if(xMin < 0)
- {
- float y0Prime = y0 + (yMin) / sY;
- line(x0, y0Prime, x0 + pX, y0Prime);
- }*/
- line(x0, y0, x0 + pX, y0);
- line(x0, y0, x0, y0 - pY);
- int xSectors = pX / dX;
- int ySectors = pY / dY;
- //Chertane
- char t[20];
- for(int i = 0; i <= xSectors; i++)
- {
- line(x0 + i*dX, y0, x0 + i*dX, y0 + 3);
- gcvt(xMin + i*dX*sX, 5.2, t);
- outtextxy(x0 + i * dX - 13, y0 + 10, t);
- }
- for(int i = 0; i <= ySectors; i++)
- {
- line(x0, y0 - i*dY, x0 - 3, y0 - i*dY);
- gcvt(yMin + i * dY * sY, 5.2, t);
- outtextxy(x0 - 50, y0 - i * dY - 15, t);
- }
- //Tochki
- for(int i = 0; i < N; i++)
- {
- int x = x0 + ((xArray[i] - xMin) / sX);
- int y = y0 - ((yArray[i] - yMin) / sY);
- int x2 = x0 + ((x2Array[i] - xMin) / sX);
- int y2 = y0 - ((y2Array[i] - yMin) / sY);
- setcolor(2);
- circle(x, y, 2);
- setcolor(15);
- circle(x2, y2, 2);
- }
- //Svurzvashti linii
- /* for(int i = 0; i < N - 1; i++)
- {
- int x1 = x0 + ((xArray[i] - xMin) / sX);
- int y1 = y0 - ((yArray[i] - yMin) / sY);
- int x2 = x0 + ((xArray[i + 1] - xMin) / sX);
- int y2 = y0 - ((yArray[i + 1] - yMin) / sY);
- line(x1, y1, x2, y2);
- } */
- getch();
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement