Advertisement
Guest User

Untitled

a guest
Feb 20th, 2019
85
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.87 KB | None | 0 0
  1. #include <iostream>
  2. #include <graphics.h>
  3. #include <math.h>
  4.  
  5. using namespace std;
  6.  
  7. const int N = 80;
  8.  
  9. int main()
  10. {
  11. initwindow(800, 600);
  12. float xArray[N];
  13. float yArray[N];
  14.  
  15. float x2Array[N];
  16. float y2Array[N];
  17.  
  18. int x0 = 150;
  19. int y0 = 500;
  20.  
  21. int pX = 500;
  22. int pY = 400;
  23.  
  24. int dX = 50;
  25. int dY = 80;
  26.  
  27. float xMin = -4;
  28. float xMax = 20;
  29. float xMin1 = 5;
  30. float xMax1 = 25;
  31.  
  32. float deltaX = (xMax - xMin) / (N - 1);
  33. float deltaX2 = (xMax1 - xMin1) / (N-1);
  34.  
  35. for(int i = 0; i < N; i++)
  36. {
  37. xArray[i] = xMin + i * deltaX;
  38. yArray[i] = 5 * xArray[i] * xArray[i] - 3 * xArray[i] + 10;
  39. x2Array[i] = xMin1 + i*deltaX2;
  40. y2Array[i] = pow(x2Array[i], 3) - 8 * x2Array[i] + 7;
  41. }
  42. float yMin = yArray[0];
  43. float yMax = yArray[0];
  44. float yMin1 = y2Array[0];
  45. float yMax1 = y2Array[0];
  46.  
  47. for(int i = 0; i < N; i++)
  48. {
  49. if(yMin > yArray[i])
  50. yMin = yArray[i];
  51.  
  52. if(yMax < yArray[i])
  53. yMax = yArray[i];
  54.  
  55. if(yMin1 > y2Array[i])
  56. yMin1 = y2Array[i];
  57.  
  58. if(yMax1 < y2Array[i])
  59. yMax1 = y2Array[i];
  60. }
  61.  
  62. if(yMax1 > yMax)
  63. yMax = yMax1;
  64.  
  65. if(yMin1 < yMin)
  66. yMin = yMin1;
  67.  
  68. float sX = (xMax1 - xMin) / pX;
  69. float sY = (yMax - yMin) / pY;
  70.  
  71. //if(xMin < 0)
  72. //{
  73. //float x0Prime = x0 + (0 - xMin) / sX;
  74. //line(x0Prime, y0, x0Prime, y0 - pY);
  75. //}
  76.  
  77. /*if(xMin < 0)
  78. {
  79. float y0Prime = y0 + (yMin) / sY;
  80. line(x0, y0Prime, x0 + pX, y0Prime);
  81. }*/
  82.  
  83. line(x0, y0, x0 + pX, y0);
  84. line(x0, y0, x0, y0 - pY);
  85.  
  86. int xSectors = pX / dX;
  87. int ySectors = pY / dY;
  88.  
  89. //Chertane
  90.  
  91. char t[20];
  92. for(int i = 0; i <= xSectors; i++)
  93. {
  94. line(x0 + i*dX, y0, x0 + i*dX, y0 + 3);
  95. gcvt(xMin + i*dX*sX, 5.2, t);
  96. outtextxy(x0 + i * dX - 13, y0 + 10, t);
  97. }
  98. for(int i = 0; i <= ySectors; i++)
  99. {
  100. line(x0, y0 - i*dY, x0 - 3, y0 - i*dY);
  101. gcvt(yMin + i * dY * sY, 5.2, t);
  102. outtextxy(x0 - 50, y0 - i * dY - 15, t);
  103. }
  104.  
  105. //Tochki
  106.  
  107. for(int i = 0; i < N; i++)
  108. {
  109.  
  110. int x = x0 + ((xArray[i] - xMin) / sX);
  111. int y = y0 - ((yArray[i] - yMin) / sY);
  112. int x2 = x0 + ((x2Array[i] - xMin) / sX);
  113. int y2 = y0 - ((y2Array[i] - yMin) / sY);
  114. setcolor(2);
  115. circle(x, y, 2);
  116. setcolor(15);
  117. circle(x2, y2, 2);
  118. }
  119.  
  120. //Svurzvashti linii
  121.  
  122. /* for(int i = 0; i < N - 1; i++)
  123. {
  124. int x1 = x0 + ((xArray[i] - xMin) / sX);
  125. int y1 = y0 - ((yArray[i] - yMin) / sY);
  126. int x2 = x0 + ((xArray[i + 1] - xMin) / sX);
  127. int y2 = y0 - ((yArray[i + 1] - yMin) / sY);
  128. line(x1, y1, x2, y2);
  129. } */
  130. getch();
  131. return 0;
  132. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement