Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <math.h>
- #include <stdlib.h>
- #include <stdio.h>
- #include <time.h>
- #define R 1. // радиус круга
- #define X0 2. // иксовая координата центра круга
- #define Y0 2. // игриковая координата центра круга
- #define Xm12 0.
- #define Ym12 1.
- #define Xm11 1.
- #define Ym11 0.
- #define Xm21 0.
- #define Ym21 -1.
- #define Xm22 -1.
- #define Ym22 0.
- int main () {
- time_t i;
- float xt, yt;
- int n;
- srand(time(&i)); // инициализация генератора случайных чисел
- for ( n = 0; n < 30; n++) {
- xt = (random()%60 - 29) / 10.; // иксовая координата начальной точки
- yt = (random()%60 - 29) / 10.; // игриковая координата начальной точки
- printf("точка x = %.1f; y = %.1f; ", xt, yt);
- if ( xt >= X0 - sqrt(R*R - (yt - Y0) * (yt - Y0)) && xt <= X0 + sqrt(R*R - (yt - Y0) * (yt - Y0))
- && yt >= Y0 - sqrt(R*R - (xt - X0) * (xt - X0)) && yt <= Y0 + sqrt(R*R - (xt - X0) * (xt - X0)))
- printf("попала в зону А");
- else if ( xt >= (yt - Ym21) * (Xm22 - Xm21) / (Ym22 - Ym21) + Xm21
- && xt <= (yt - Ym11) * (Xm12 - Xm11) / (Ym12 - Ym11) + Xm11
- && yt >= (Ym22 - Ym21) * (xt - Xm21) / (Xm22 - Xm21) + Ym21
- && yt <= (Ym12 - Ym11) * (xt - Xm11) / (Xm12 - Xm11) + Ym11)
- printf("попала в зону B");
- else if ( xt >= -3 && xt <= -1 && yt >= -3 && yt <= -1)
- printf("попала в зону C");
- else
- printf("никуда не попала");
- printf("\n");
- }
- return 0;
- }
Add Comment
Please, Sign In to add comment