Guest User

Untitled

a guest
May 23rd, 2018
92
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.67 KB | None | 0 0
  1. #include <math.h>
  2. #include <stdlib.h>
  3. #include <stdio.h>
  4. #include <time.h>
  5.  
  6. #define R 1. // радиус круга
  7. #define X0 2. // иксовая координата центра круга
  8. #define Y0 2. // игриковая координата центра круга
  9.  
  10. #define Xm12 0.
  11. #define Ym12 1.
  12. #define Xm11 1.
  13. #define Ym11 0.
  14. #define Xm21 0.
  15. #define Ym21 -1.
  16. #define Xm22 -1.
  17. #define Ym22 0.
  18.  
  19. int main () {
  20. time_t i;
  21. float xt, yt;
  22. int n;
  23.  
  24. srand(time(&i)); // инициализация генератора случайных чисел
  25.  
  26. for ( n = 0; n < 30; n++) {
  27. xt = (random()%60 - 29) / 10.; // иксовая координата начальной точки
  28. yt = (random()%60 - 29) / 10.; // игриковая координата начальной точки
  29.  
  30. printf("точка x = %.1f; y = %.1f; ", xt, yt);
  31.  
  32. if ( xt >= X0 - sqrt(R*R - (yt - Y0) * (yt - Y0)) && xt <= X0 + sqrt(R*R - (yt - Y0) * (yt - Y0))
  33. && yt >= Y0 - sqrt(R*R - (xt - X0) * (xt - X0)) && yt <= Y0 + sqrt(R*R - (xt - X0) * (xt - X0)))
  34. printf("попала в зону А");
  35.  
  36. else if ( xt >= (yt - Ym21) * (Xm22 - Xm21) / (Ym22 - Ym21) + Xm21
  37. && xt <= (yt - Ym11) * (Xm12 - Xm11) / (Ym12 - Ym11) + Xm11
  38. && yt >= (Ym22 - Ym21) * (xt - Xm21) / (Xm22 - Xm21) + Ym21
  39. && yt <= (Ym12 - Ym11) * (xt - Xm11) / (Xm12 - Xm11) + Ym11)
  40. printf("попала в зону B");
  41.  
  42. else if ( xt >= -3 && xt <= -1 && yt >= -3 && yt <= -1)
  43. printf("попала в зону C");
  44.  
  45. else
  46. printf("никуда не попала");
  47.  
  48.  
  49.  
  50. printf("\n");
  51.  
  52. }
  53.  
  54.  
  55. return 0;
  56. }
Add Comment
Please, Sign In to add comment